Змест[Схаваць][Паказаць]
Многія кампаніі імкнуцца распрацоўваць практычныя прыкладанні і праграмнае забеспячэнне, каб даць сваім кліентам лічбавы вопыт у святле змяненняў часу і таго, як цяпер функцыянуе свет.
Робячы гэта, яны могуць лепш задаволіць патрабаванні сваіх кліентаў.
Працаваць з распрацоўшчыкамі, каб зрабіць гэтыя лічбавыя бачання рэальнасцю, можа быць складана. Адзін з іх - ведаць ключавыя тэрміны і паняцці, якія выкарыстоўваюцца ў працэсе распрацоўкі праграмнага забеспячэння.
Што яшчэ горш, не кожны распрацоўшчык можа сцісла і проста выказаць гэтыя ідэі тым, хто не з'яўляецца экспертам у сваёй галіне. SDK і API - дзве такія ідэі.
Нягледзячы на тое, што гэтыя фразы перакрываюцца, паколькі яны часта выкарыстоўваюцца падчас распрацоўкі праграмнага забеспячэння.
З-за гэтага цяпер адрозніць іх значна цяжэй. Акрамя таго, некаторыя распрацоўшчыкі могуць патрабаваць, каб вы выбіралі адно з двух пры падключэнні сістэм, што з'яўляецца праблемай.
Як вы можаце выбраць сярод іх, калі вы не цалкам разумееце канцэпцыю? Ці трэба выбіраць адзін з іх?
З выразнымі азначэннямі, прыкладамі і тэматычнымі даследаваннямі, якія дапамогуць зразумець, гэты артыкул даследуе адрозненні паміж гэтымі двума паняццямі.
Што такое SDK?
SDK азначае камплект распрацоўкі праграмнага забеспячэння, як вынікае з назвы. Гэта набор, які ўключае праграмныя інструменты і дадаткі, неабходныя праграмістам для стварэння прыкладанняў для розных платформаў.
Яна ўключае ў сябе ўсё неабходнае для стварэння модуля прыкладання. Група інструментаў распрацоўкі праграмнага забеспячэння, якія адпавядаюць платформам, складае SDK.
Гэтыя інструменты могуць быць адладчыкамі, кампілятарамі, бібліятэкамі кода (таксама вядомымі як структуры) або працэдурамі і падпраграмамі, распрацаванымі спецыяльна для аперацыйнай сістэмы.
Падобна таму, як вам спатрэбіцца некалькі розных прадуктаў, каб правільна наладзіць стол, выкарыстанне SDK падобна на гэта. Ён будзе складацца з асобных кампанентаў стала, інструкцый па наладцы і абсталявання, неабходнага для зборкі стала.
Звычайныя будаўнічыя часткі SDK складаюцца з наступнага:
- Бібліятэкі кодаў: замест таго, каб круціць кола, распрацоўшчыкі могуць выкарыстоўваць ужо існуючыя рэсурсы (напрыклад, паслядоўнасці кодаў) дзякуючы бібліятэкам кодаў.
- Інструменты для тэсціравання і аналізу: гэтыя інструменты ацэньваюць, наколькі добра працуе прыкладанне як у тэставых, так і ў працоўных наладах.
- Дакументацыя: на працягу ўсяго працэсу распрацоўкі распрацоўшчыкі пры неабходнасці звяртаюцца да пісьмовых інструкцый.
- Кампілятар: кампілятар - гэта праграмнае забеспячэнне, якое аналізуе аператары на мовах праграмавання і пераўтварае іх у «код», які можа зразумець працэсар.
- Адладчык: адладчык дапамагае праграмістам знаходзіць і выпраўляць памылкі ў кодзе.
- Узоры кода паказваюць задачы па праграмаванні або сітуацыі, якія забяспечваюць больш дэталёвае разуменне прыкладання або вэб-старонкі.
- Праграмы і падпраграмы: у агульным камп'ютэрным кодзе працэдура або падпраграма - гэта метад, функцыя, аперацыя, падпраграма або фрагмент кода, які можа быць выкліканы і выкананы ў любым месцы. Напрыклад, працэдура выкарыстоўваецца для выканання выбару захавання файла.
Як працуюць SDK?
Пакеты SDK забяспечваюць распрацоўнікам доступ да розных інструментаў, неабходных для хуткага стварэння праграмнага забеспячэння.
Напрыклад, для Android ад Google і iOS ад Apple Facebook прапануе SDK. Гэтыя SDK служаць бясплатнымі бібліятэкамі з адкрытым зыходным кодам, якія палягчаюць уключэнне Facebook у ваша прыкладанне для Android або iOS.
Акрамя таго, Microsoft забяспечвае .NET фрэймворк SDK для складаных прыкладанняў. Ён уключае прыклады, рэсурсы і бібліятэкі, неабходныя для стварэння праграм Windows.
Цяпер, калі вы знаёмыя са спецыфікай SDK, давайце вывучым, як яны працуюць.
- Вы павінны спачатку купіць, спампаваць і ўсталяваць неабходны «набор» для вашай платформы. Гэта можа прымяняцца да спампоўкі файлаў з інструкцыямі, прыкладамі і кампанентамі кампанентаў.
- Далей вы можаце атрымаць доступ да інтэграванага асяроддзя распрацоўкі (IDE) і ўсіх інструментаў, неабходных для стварэння новага прыкладання. Затым праграмісты могуць пачаць ствараць свае праграмы. Функцыя кампілятара цяпер зразумелая.
- Нарэшце, вы можаце праверыць новае прыкладанне з дапамогай дакументацыі, прыкладаў кода, інструкцый і інструментаў аналітыкі.
Вы можаце пачаць свае прыгоды з SDK, як толькі вы скончыце гэтыя крокі.
Віды SDK
SDK з'яўляюцца асновай для распрацоўкі вэб-сайтаў і мабільных прыкладанняў.
Давайце разгледзім некалькі тыповых відаў SDK.
- SDK платформы: гэтыя SDK з'яўляюцца важнымі інструментамі, неабходнымі для стварэння праграм для ўсіх платформаў. Напрыклад, праграмы Windows 11 Store ствараюцца з дапамогай Windows 11 SDK.
- Пашырэнні SDK: Гэтыя дадатковыя камплекты распрацоўкі праграмнага забеспячэння выкарыстоўваюцца для паляпшэння і персаналізацыі асяроддзя распрацоўкі. Аднак яны не патрэбныя для стварэння праграм для пэўнай платформы.
- Analytics SDK: Гэтыя SDK збіраюць інфармацыю аб дзеяннях карыстальнікаў, паводзінах і г.д., напрыклад, Analytics SDK ад Google.
- SDK для манетызацыі: гэтыя SDK выкарыстоўваюцца распрацоўшчыкамі для ўстаўкі рэкламы ва ўжо існуючыя праграмы. Яны створаны з выключнай мэтай зарабіць грошы.
- SDK для моў праграмавання: гэтыя SDK выкарыстоўваюцца для стварэння праграм на пэўных мовах. Напрыклад, Java Developer Kit (JDK) выкарыстоўваецца для стварэння прыкладанняў, якія выкарыстоўваюць мову праграмавання Java.
Перавагі SDK
- Распрацоўку праграмнага забеспячэння можна паскорыць дзякуючы простаму доступу SDK да гатовых кампанентаў.
- Дзякуючы паскоранаму працэсу распрацоўкі, які забяспечваецца SDK, распрацоўшчыкі могуць паўторна выкарыстоўваць фрагменты кода. Гэта дае праграмістам шмат часу, каб засяродзіцца на важных задачах.
- SDK забяспечваюць больш плаўнае ўзаемадзеянне праграмнага забеспячэння і прыкладанняў. Акрамя таго, яны прапануюць лёгкі доступ да неабходнай інфармацыі з дапамогай адпаведных дакументаў.
- Пакеты SDK абсталяваны поўнай дакументацыяй і ўбудаванай дапамогай па кодах. У выніку распрацоўшчыкам не трэба шукаць спецыялістаў па тэмах, каб адказаць на іх пытанні.
- Вышэйзгаданыя элементы дапамагаюць мінімізаваць непатрэбныя выдаткі на этапах распрацоўкі праграмнага забеспячэння і пасля яго разгортвання.
Зараз давайце пяройдзем да пераходнай часткі API.
Што такое API?
Інтэрфейс прыкладнога праграмавання вядомы пад абрэвіятурай API. Ён апісвае набор рэкамендацый, з дапамогай якіх платформы, гаджэты або праграмы звязваюцца адзін з адным і абменьваюцца інфармацыяй.
API могуць быць асобнымі аб'ектамі або кампанентамі SDK. Гэта стварае сінхранізацыю паміж многімі праграмамі на сістэмным узроўні ў абодвух выпадках.
Стварэнне эфектыўных API залежыць ад таго, што распрацоўшчыкі максімальна выкарыстаюць прапрыетарнае або несвабоднае праграмнае забеспячэнне. Пасля гэтага яны могуць выкарыстоўваць распрацаваныя сэрвісы API, да якіх спажыўцы маюць доступ.
Двухбаковая дамова і API падобныя. Разам з хуткай перадачай інфармацыі, ён таксама дае інструкцыі аб тым, як інфармацыя павінна быць дастаўлена.
Тэрміны «API» і «інтэрфейс» часам выкарыстоўваюцца для абазначэння аднаго і таго ж, паколькі вядома, што некаторыя API забяспечваюць «інтэрфейс».
API змяшчае дзве асноўныя часткі:
- Тэхнічныя рэчы: інфармацыя аб пратаколах для інтэграцыі API называецца спецыфікацыяй API (г.зн. з іншымі платформамі і праграмамі). Гэта павінна быць старанна задакументавана, каб гарантаваць, што API выкарыстоўваецца эфектыўна.
- Сувязь: Інтэрфейс прапануе спосаб дасягнення API. Калі гэта вэб-API, да яго можна атрымаць доступ з дапамогай ключавога слова або праз іншы інтэрфейс.
Як функцыянуе API?
API забяспечваюць бясшвоўную сувязь паміж рознымі наборамі прыкладанняў. Возьмем выпадак з супермаркетам, дзе ў вас ужо ёсць дадатак, з дапамогай якога кліенты могуць праглядаць і заказваць тавары ў Інтэрнэце.
Ваша праграма ўжо прапануе гэту паслугу. Давайце ўявім, што спажыўцы таксама хочуць шукаць харчовыя крамы ў пэўным раёне горада.
У гэтай сітуацыі вы можаце падключыць сваю праграму да вядомых пастаўшчыкоў прадуктовых паслуг у горадзе. Укараняючы API геолокации, карыстальнікі могуць шукаць харчовыя крамы, не турбуючыся аб асобным дадатку геолокации.
З тэхналагічнага пункту гледжання запыт API ўключае дзеянні, пералічаныя ніжэй:
- Задача з вашай праграмы запускаецца карыстальнікам праграмы, які стварае запыт.
- Выклікаючы вэб-сервер, API перадае запыт. Запыт звычайна прызначаны для дасягнення канчатковай кропкі API, таму API ведае, куды яго адправіць. Канчатковы пункт вызначаецца URL-адрасом сервера.
- У рэшце рэшт, праца скончана, паколькі база дадзеных або знешняя праграма забяспечвае неабходны сэрвіс.
Тыпы API
REST (перадача рэпрэзентатыўнага стану)
Адной з найбольш распаўсюджаных формаў API з'яўляецца REST API, які павінен адпавядаць шэрагу стандартаў, у тым ліку:
- Архітэктура кліент-сервер: змены сервера не павінны ўплываць на кліентаў
- CRUD (стварэнне, чытанне, абнаўленне, выдаленне) і JSON выкарыстоўваюцца кліентам і серверам для сувязі.
- Паміж любымі двума запытамі сервер не захоўвае статус кліента.
Транспарт дадзеных часта выкарыстоўвае REST. Каб атрымаць імя, месцазнаходжанне і выяву профілю карыстальніка Facebook у іншую праграму, напрыклад, выкарыстоўваецца API Facebook.
SOAP (просты пратакол доступу да аб'ектаў) API
Яны ўяўляюць сабой вэб-інтэрфейсы API, якія выкарыстоўваюцца, калі патрабуецца павышэнне прыватнасці і бяспекі даных. Яны здольныя мець зносіны праз вэб-пратаколы, уключаючы HTTP, SMTP, TCP/IP і іншыя.
REST - гэта архітэктурная парадыгма, а SOAP - гэта набор пратаколаў. У выніку пратаколы на аснове SOAP можна выкарыстоўваць для распрацоўкі RESTful API.
RPC (аддалены выклік працэдуры)
Гэта выкарыстоўваецца для запуску кода ў іншай сістэме. RPC выклікае метады, у адрозненне ад REST, дзе кліент проста запытвае дадзеныя. Запыты, вядомыя як XML-RPC і JSON-RPC, можна адпраўляць у формах XML або JSON.
Пасля выкарыстання працэдуры запытчык чакае адказ ад іншай сістэмы.
Напрыклад, API плацежнага шлюза правярае нумар крэдытнай карты (шляхам запуску кода пасля завяршэння) і паведамляе прыкладанню, якое запытвае, калі ён быў паспяховым або няўдалым.
Перавагі API
- І звычайныя карыстальнікі, і прафесіяналы ў галіне распрацоўкі карыстаюцца API. Для мадэрнізацыі агенцкіх сістэм і павышэння камерцыйнага патэнцыялу арганізацыі распрацоўшчыкі могуць супрацоўнічаць з зацікаўленымі бакамі бізнесу.
- API злучаюць розныя праграмныя праграмы, адначасова паляпшаючы агульную прадукцыйнасць праграмы або прадукту.
- Пасля стварэння інфармацыя можа быць лёгка перададзена і перапрафілявана па розных каналах праз доступ API.
- Налады магчымыя з дапамогай API. Адаптуючы інфармацыю або паслугі да сваіх патрэбаў, кожны карыстальнік або кампанія можа атрымаць ад гэтага прыбытак.
- API дапамагаюць праграмістам паскорыць працэс распрацоўкі праграмнага забеспячэння. Аўтаматызацыя API трымае ключ, паколькі для выканання працы выкарыстоўваюцца камп'ютары, а не ручная рабочая група. Кампаніі могуць адначасова абнавіць свае працоўныя працэсы дзякуючы API.
SDK і API: асноўныя адрозненні
Як паказваюць папярэднія тлумачэнні, гэтыя ідэі сапраўды супадаюць і ўзаемазвязаны спосабамі, якія адрозніваюць іх адрозненні.
Тым не менш, мы паспрабуем правесці выразнае адрозненне, каб высветліць любую пакінутую нявызначанасць.
- API могуць уключаць у сябе SDK, але SDK не могуць утрымлівацца API.
- Дзве праграмы могуць мець зносіны дзякуючы API. Усе інструменты, неабходныя для стварэння прыкладанняў з нуля, знаходзяцца ў SDK.
- API выкарыстоўваюцца SDK для забеспячэння сувязі паміж дзвюма праграмамі. Прыкладанні нельга ствараць праз API.
- SDK простыя ў выкарыстанні і хутчэй інтэгруюцца. API простыя ў адаптацыі і не маюць бібліятэк кода.
- Па сутнасці, API служыць інтэрфейсам прыкладання. SDK з'яўляюцца будаўнічымі блокамі для стварэння праграм.
- Распрацоўшчыкі заўсёды ствараюць прыкладанні з дапамогай SDK. Толькі тады, калі ёсць патрабаванне для знешняга кантакту з іншымі платформамі, API з'яўляюцца на сцэне.
- API перадаюць запыты ад адной праграмы да іншай і дае адказы на зыходную праграму. Пакеты SDK ўключаюць усё неабходнае для сувязі з іншымі праграмамі і для стварэння праграм.
Выбар паміж SDK і API
Па сутнасці, API апісваюць, як некалькі платформаў могуць сінхранізаваць свае аперацыі. З дапамогай пратаколаў і стандартаў яны палягчаюць інтэграцыю прыкладанняў. Такім чынам, яны з'яўляюцца адной з істотных частак SDK.
Аднак выкарыстоўваць API для стварэння праграм з нуля немагчыма.
SDK палягчае стварэнне новага праграмнага забеспячэння або прыкладанняў, якія спецыялізуюцца на пэўнай платформе або мове праграмавання. Як правіла, SDK змяшчае як мінімум адзін API для знешняй сувязі.
Выкарыстоўвайце SDK для платформы, на якой будзе працаваць ваша праграма, напрыклад iOS, калі вы распрацоўваеце яе для гэтай платформы. Выкарыстоўвайце API праграмы для ўзаемадзеяння з іншымі інтэрнэт-праграмамі, такімі як Facebook.
заключэнне
У заключэнне, SDK часта ўключаюць API, але ні адзін API не пастаўляецца з SDK. Пакеты SDK дазваляюць ствараць прыкладанні гэтак жа, як падмурак дома дазваляе яму стаяць высока.
Акрамя таго, API вызначаюць, як прыкладанняў у SDK працаваць і мець зносіны гэтак жа, як тэлефонныя лініі для сувязі з вонкавым светам.
Пакінуць каментар