{"id":15457,"date":"2021-07-24T13:33:00","date_gmt":"2021-07-24T10:33:00","guid":{"rendered":"https:\/\/mobidictum.com\/?p=15457"},"modified":"2023-04-25T10:50:18","modified_gmt":"2023-04-25T07:50:18","slug":"sdk-nedir","status":"publish","type":"post","link":"https:\/\/mobidictum.com\/tr\/sdk-nedir\/","title":{"rendered":"SDK nedir?"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">SDK nedir sorusunun ger\u00e7ek anlam\u0131n\u0131 hi\u00e7 d\u00fc\u015f\u00fcnd\u00fcn\u00fcz m\u00fc? \u0130smini bir\u00e7ok kez gerek blog g\u00f6nderilerinde gerekse geli\u015ftirici ekip ile yap\u0131lan toplant\u0131larda duydu\u011fumuz SDK a\u00e7\u0131l\u0131m\u0131 nedir? Bu yaz\u0131m\u0131zda SDK nedir sorusuna cevap verdik ve detaylara indik.<\/p>\n\n\n\n\n\n<h2 class=\"wp-block-heading\">SDK nedir?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">SDK ne demek diye soranlara direkt olarak Yaz\u0131l\u0131m Geli\u015ftirme Kiti(Software Development Kit) veya k\u0131saca devkit anlam\u0131na geldi\u011fini s\u00f6yleyebiliriz. Geli\u015ftiriciler taraf\u0131ndan belirli platformlara uygulama olu\u015fturmak i\u00e7in kullan\u0131lan bir dizi yaz\u0131l\u0131m arac\u0131 ve programd\u0131r. SDK ara\u00e7lar\u0131, geli\u015ftiricilerin kullanabilecekleri ve kendi uygulamalar\u0131na entegre edebilecekleri kitapl\u0131klar, belgeler, kod \u00f6rnekleri, s\u00fcre\u00e7ler ve k\u0131lavuzlar dahil olmak \u00fczere bir\u00e7ok \u015feyi i\u00e7erir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SDK asl\u0131nda belirli platformlar veya programlara dillerinde kullan\u0131lmak \u00fczere tasarlanm\u0131\u015ft\u0131r. \u00d6rne\u011fin Android uygulamas\u0131 olu\u015fturmak i\u00e7in bir Android SDK setine, iOS uygulamas\u0131 i\u00e7in iOS SDK setine, Java i\u00e7in ise Java SDK(JDK) setine ihtiya\u00e7 duyulur. Bluetooth veya kablosuz \u00fcr\u00fcnler olu\u015fturmak i\u00e7in ise Nordic SDK vb. kite ihtiya\u00e7 duyuluyor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Android SDK nedir?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bir Android oyun veya uygulama geli\u015ftiricisiyseniz, geli\u015ftirici \u00e7antan\u0131z\u0131n en ba\u015f\u0131nda olmas\u0131 gerekenlerden biri Android SDK olmal\u0131d\u0131r. Android i\u015fletim sistemine sahip telefonlar i\u00e7in uygulamalar\u0131n \u00e7al\u0131\u015fmas\u0131 i\u00e7in mutlaka Android SDK kullan\u0131lmal\u0131d\u0131r. Android SDK nedir diye soracak olanlar i\u00e7in daha \u00f6nce yay\u0131nlad\u0131\u011f\u0131m\u0131z <a href=\"https:\/\/mobidictum.com\/tr\/android-sdk-nedir-sdk-nasil-kurulur\/\" data-type=\"URL\" data-id=\"https:\/\/mobidictum.com\/tr\/android-sdk-nedir-sdk-nasil-kurulur\/\">Android SDK nedir? SDK nas\u0131l kurulur? <\/a>ba\u015fl\u0131kl\u0131 yaz\u0131m\u0131z\u0131 \u00f6nerebiliriz.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0130yi bir SDK\u2019n\u0131n \u00f6zellikleri<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Di\u011fer geli\u015ftiriciler taraf\u0131ndan kullan\u0131m\u0131 kolay<\/li><li>Kodunuzu nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 a\u00e7\u0131klamak i\u00e7in kapsaml\u0131 belgeler<\/li><li>Di\u011fer uygulamalara de\u011fer katmas\u0131 i\u00e7in yeterli i\u015flevsellik<\/li><li>Bir mobil cihaz\u0131n CPU\u2019sunu, pilini veya veri t\u00fcketimini olumsuz etkilememesi<\/li><li>Di\u011fer SDK\u2019lar ile uyumlu \u00e7al\u0131\u015fmas\u0131<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Mobil SDK \u015firketinizin d\u0131\u015f\u0131nda kullan\u0131lmak \u00fczere tasarland\u0131\u011f\u0131ndan, di\u011fer i\u015fletmelere ve geli\u015ftiricilere de\u011fer sa\u011flamal\u0131d\u0131r. K\u0131sacas\u0131, sadece \u00e7al\u0131\u015fmas\u0131 gerekiyor. \u0130deal olarak, zarif bir \u015fekilde \u00e7al\u0131\u015fmal\u0131 ve i\u015fi tamamlad\u0131\u011f\u0131 s\u00fcrece iyi olmal\u0131d\u0131r.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Yeni mobil uygulamalar\u0131 veya projeleri kaynak-metin d\u00fczeyinde komut sat\u0131r\u0131nda ba\u011flamak i\u00e7in \u00e7o\u011fu SDK\u2019ya bir API dahildir. Ayr\u0131ca, geli\u015ftiricelere temel programlar\u0131 nas\u0131l olu\u015fturacaklar\u0131n\u0131 \u00f6\u011frenmelerine yard\u0131mc\u0131 olacak \u00f6rnek programlar ve kitapl\u0131klar veren kod \u00f6rnekleri de i\u00e7erirler. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Baz\u0131 SDK\u2019lar, API\u2019lerin nas\u0131l kullan\u0131laca\u011f\u0131na dair belgelerin yan\u0131 s\u0131ra, \u00f6\u011freticiler, SSS\u2019ler ve \u00f6rnek grafikler i\u00e7erir. \u00c7\u00fcnk\u00fc bir geli\u015ftiricinin yeni bir SDK\u2019y\u0131 nas\u0131l kullanaca\u011f\u0131n\u0131 \u00f6\u011frenmesi bazen biraz zaman alabilir. Bu nedenle, sezgisel bir programlama veya kullan\u0131c\u0131 arabirimi geli\u015ftiricileri bir rakibin se\u00e7ene\u011fi yerine bir \u015firketin belirli program\u0131n\u0131 kullanmaya te\u015fvik etmede yard\u0131mc\u0131 olur.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dikkate al\u0131nmas\u0131 gerekenler<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Baz\u0131 SDK\u2019lar\u0131n, \u00f6zellikle alfa veya beta a\u015famas\u0131ndaki yeni \u00fcr\u00fcnler i\u00e7in veya 3. ki\u015filere a\u00e7\u0131klanmayan algoritmalara sahip yaz\u0131l\u0131mlar i\u00e7in kullan\u0131lmadan \u00f6nce kabul edilmesi ve sunulmas\u0131 gereken kurallar\u0131 veya anla\u015fmalar\u0131olabilir. Olu\u015fturulan yaz\u0131l\u0131m\u0131n uyumsuz bir lisans alt\u0131nda yay\u0131nlanmamas\u0131 i\u00e7in bir SDK ayr\u0131ca lisans s\u00f6zle\u015fmesine tabi olabilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bir geli\u015ftiricinin, hangi SDK ile \u00e7al\u0131\u015fmaya ba\u015flayaca\u011f\u0131n\u0131 se\u00e7erken bunlar\u0131 dikkate almas\u0131 gerekir. \u00d6rne\u011fin; <\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Tescilli lisansa sahip bir SDK, a\u00e7\u0131k kaynakl\u0131 yaz\u0131l\u0131m geli\u015ftirme ile uyumlu de\u011fildir.<\/li><li>Genel Kamu Lisans\u0131\u2019na(GPL) sahip SDK\u2019lar, tescilli uygulamalar geli\u015ftirmek i\u00e7in \u00e7al\u0131\u015fmaz.<\/li><li>Tescilli kod \u00f6\u011felerine sahip projeler i\u00e7in LGPL\u2019de \u00e7al\u0131\u015fmak i\u00e7in baz\u0131 uyar\u0131lar vard\u0131r.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">SDK nas\u0131l indirilir?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bir SDK, bir \u015firketin \u00fcr\u00fcnlerini tan\u0131tmas\u0131 ve platformlar\u0131n\u0131 veya i\u015fletim sistemlerini kullanarak ger\u00e7ek zamanl\u0131 olarak entegre bir geli\u015ftirme ortam\u0131nda uygulamalar olu\u015fturmaya te\u015fvik etmesi i\u00e7in harika bir yol olabilir. Bu nedenle, \u00e7o\u011fu SDK \u00fccretsizdir. Geli\u015ftiriciler bunlar\u0131 indirebilir ve hemen programlama ba\u015flayabilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00d6rne\u011fin Android uygulamas\u0131 veya oyunu geli\u015ftirmek istiyorsan\u0131z <a rel=\"noreferrer noopener nofollow\" href=\"https:\/\/developer.android.com\/studio\/releases\/platform-tools\" data-type=\"URL\" data-id=\"https:\/\/developer.android.com\/studio\/releases\/platform-tools\" target=\"_blank\">Android Developers<\/a> b\u00f6l\u00fcm\u00fcnden bunu yapabilirsiniz. Bu ba\u011flant\u0131dan SDK indirmenin yan\u0131nda, size yard\u0131mc\u0131 olacak bir\u00e7ok konu ba\u015fl\u0131\u011f\u0131na da ula\u015fabilirsiniz. Size laz\u0131m olan farkl\u0131 SDK\u2019lar i\u00e7in de geli\u015ftirici forumlar\u0131nda ara\u015ft\u0131rmalar yaparak, ihtiyac\u0131n\u0131z olanlara eri\u015fip \u00fccretsiz bir \u015fekilde indirebilirsiniz.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">SDK ve API aras\u0131ndaki fark nedir?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">SDK ve API uygulama geli\u015ftirme a\u015famas\u0131nda \u00f6rt\u00fc\u015fmek zorundad\u0131r. Bu da onlar\u0131 kar\u015f\u0131la\u015ft\u0131rmay\u0131 veya aralar\u0131nda se\u00e7im yapmay\u0131 biraz kafa kar\u0131\u015ft\u0131r\u0131c\u0131 hale getiriyor. En iyi \u00e7\u00f6z\u00fcm i\u00e7in her ikisinin de i\u00e7erdi\u011fi farkl\u0131 durumlar var.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SDK\u2019lar genellikle bir API i\u00e7erdi\u011fi i\u00e7in nas\u0131l farkl\u0131la\u015ft\u0131\u011f\u0131na dair basit bir yan\u0131t yoktur. Bir geli\u015ftirici, sistemler olu\u015fturmak ve uygulamalar geli\u015ftirmek i\u00e7in bir SDK kulland\u0131\u011f\u0131nda, bu uygulamalar\u0131n di\u011fer uygulamalarla ileti\u015fim kurmas\u0131 gerekir. SDK, bu ileti\u015fimi m\u00fcmk\u00fcn k\u0131lmak i\u00e7in bir API i\u00e7erir. \u00d6te yandan, API ileti\u015fim i\u00e7in kullan\u0131labilirken, yepyeni bir uygulama olu\u015fturamaz.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ger\u00e7ek fark, bir API\u2019nin ger\u00e7ekten yaln\u0131zca hizmet i\u00e7in bir arabirim olmas\u0131, SDK\u2019n\u0131n ise belirli bir ama\u00e7 i\u00e7in olu\u015fturulmlu\u015f ara\u00e7lar, bile\u015fenler ve kod par\u00e7alar\u0131 olmas\u0131d\u0131r. Daha iyi anlaman\u0131za ayrd\u0131mc\u0131 olmak i\u00e7in bir pasta \u00f6rne\u011fi bulunuyor. Bir pasta pi\u015firdi\u011finizde, size talimatlar\u0131 ve y\u00f6nergeleri veren bir tarife az \u00e7ok ihtiyac\u0131n\u0131z olur. Bir API bu tarif olarak d\u00fc\u015f\u00fcn\u00fclebilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bir kek tarifi i\u00e7in arama yapt\u0131ysan\u0131z, bir\u00e7ok \u015firketin tariflerini \u00e7evrim i\u00e7i olarak \u00fccretsiz sundu\u011funu fark etmi\u015fsinizidir. Bu, programc\u0131lar\u0131n kullanmas\u0131 i\u00e7in API\u2019lerini \u00e7evrim i\u00e7i olarak sa\u011flayan yaz\u0131l\u0131m \u015firketlerinden farkl\u0131 de\u011fildir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bazen s\u0131f\u0131rdan bir pasta pi\u015firmek istemezsiniz. Ya da g\u00f6z\u00fcn\u00fcz 3 katl\u0131 bir pastaya dikilmi\u015f ve onu pi\u015firmne becerine sahip de\u011filsiniz. Bu gibi durumlarda, haz\u0131r kek kar\u0131\u015f\u0131m\u0131 sizin tercihiniz olacakt\u0131r. Bu kar\u0131\u015f\u0131m, \u00f6nceden \u00f6l\u00e7\u00fclm\u00fc\u015f ana malzemeleri size sa\u011flar ve pi\u015firmeden ve servis yapmadan \u00f6nce yaln\u0131zca bir veya iki ilave malzeme eklemeniz gerekir. \u0130\u015fte bu da en basit ifadeyle, bir SDK\u2019d\u0131r.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bunlar\u0131n her ikisi de olmad\u0131\u011f\u0131 durumlarda en ba\u015ftan ba\u015flaman\u0131z ve projenizin kodunu tek ba\u015f\u0131n\u0131za s\u0131f\u0131rdan yazman\u0131z gerekir. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bu yaz\u0131m\u0131zda SDK nedir sorusunun ve API ile aras\u0131ndaki farktan bahsettik. Bir yaz\u0131l\u0131mc\u0131ysan\u0131z bu ikisi sizin her dakika duyaca\u011f\u0131n\u0131z, kullanaca\u011f\u0131z ve ihtiyac\u0131n\u0131z olacak birimler. Bu nedenle yeni ba\u015flayan geli\u015ftiricilerin de bu iki kavrama yak\u0131ndan hakim olmas\u0131 gerekiyor.<\/p>\n","protected":false},"excerpt":{"rendered":"SDK nedir diye merak edenler i\u00e7in t\u00fcm detaylar.","protected":false},"author":1,"featured_media":15476,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[8875],"tags":[],"class_list":["post-15457","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-akademi"],"acf":[],"_links":{"self":[{"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/posts\/15457","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/comments?post=15457"}],"version-history":[{"count":1,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/posts\/15457\/revisions"}],"predecessor-version":[{"id":152085,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/posts\/15457\/revisions\/152085"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/media\/15476"}],"wp:attachment":[{"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/media?parent=15457"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/categories?post=15457"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mobidictum.com\/tr\/wp-json\/wp\/v2\/tags?post=15457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}