Content deleted Content added
→Notable examples: Remove "notable", fix typo |
No edit summary Tags: Reverted references removed Visual edit Mobile edit Mobile web edit |
||
Line 1:
{{short description|Set of software development tools}}
A '''software development kit''' ('''SDK''') is a collection of
Some SDKs are required for developing a platform-specific app. For example, the development of an
==Details==
An SDK can take the form of [[application programming interface]]s (APIs)<ref name="SandovalWhatIs16">{{cite web |author=Sandoval, K. |date=2 June 2016 |title=What is the Difference Between an API and an SDK? |url=https://nordicapis.com/what-is-the-difference-between-an-api-and-an-sdk/ |access-date=5 July 2018 |work=Nordic APIs Blog |publisher=Nordic APIs AB}}</ref> in the form of on-device [[Library (computing)|libraries]] of reusable functions used to interface to a particular [[programming language]], or it may be as complex as hardware-specific tools that can communicate with a particular [[embedded system]].<ref name="BensoASoft00">{{cite journal |title=A software development kit for dependable applications in embedded systems |journal=Proceedings International Test Conference 2000 |author=Benso, A. |author2=Chiusano, S. |author3=Prinetto, P. |pages=170–8 |year=2000 |doi=10.1109/TEST.2000.894204|isbn=0-7803-6546-1 |s2cid=206679243 }}</ref> Common [[Software development tool|tools]] include debugging facilities and other [[Utility program|utilities]], often presented in an [[integrated development environment]] (IDE).<ref name="BurdAndroid15">{{cite book |url=https://books.google.com/books?id=fwElCgAAQBAJ&pg=PA31 |title=Android Application Development All-in-One For Dummies |author=Burd, B. |publisher=John Wiley & Sons |page=31 |year=2015 |isbn=9781118973806}}</ref> SDKs may include sample software and/or technical notes along with documentation, and tutorials to help clarify points made by the primary reference material.<ref name="AsifNext11">{{cite book |url=https://books.google.com/books?id=zgqQ4MX3uIUC&pg=PT384 |title=Next Generation Mobile Communications Ecosystem: Technology Management for Mobile Communications |author=Asif, S.Z. |publisher=John Wiley & Sons |page=PT384 |year=2011 |isbn=9781119995814}}</ref><ref name="WitheeSharePoint11">{{cite book |url=https://books.google.com/books?id=_OiEGA2EZz8C&pg=PT346 |title=SharePoint 2010 Development For Dummies |author=Withee, K. |publisher=John Wiley & Sons |page=PT346 |year=2011 |isbn=9781118038628}}</ref>
SDKs often include [[License compatibility|licenses]] that make them unsuitable for building software intended to be developed under an incompatible license. For example, a proprietary SDK is generally incompatible with [[free software]] development, while a [[GNU General Public License|GPL]]-licensed SDK could be incompatible with proprietary software development, for legal reasons.<ref name="Vaughan-NicholsNoGoogle13">{{cite web |url=https://www.zdnet.com/article/no-google-is-not-making-the-android-sdk-proprietary-whats-the-fuss-about/ |title=No, Google is not making the Android SDK proprietary. What's the fuss about? |author=Vaughan-Nichols, S.J. |work=ZDNet |publisher=CBS Interactive |date=4 January 2013 |access-date=5 July 2018}}</ref><ref name="OrlandSonys17">{{cite web |url=https://arstechnica.com/gaming/2017/07/sony-using-copyright-requests-to-remove-leaked-ps4-sdk-from-the-web/ |title=Sony's legal quest to remove its leaked developer's kit from the Web |author=Orland, K. |work=ArsTechnica |publisher=Condé Nast |date=20 July 2017 |access-date=5 July 2018}}</ref> However, SDKs built under the [[GNU Lesser General Public License]] (LGPL) are typically usable for proprietary development.<ref name="DavidsonAPrimer04">{{cite web |url=http://www.wipo.int/sme/en/documents/opensource_software_primer_fulltext.html |title=A Primer on Open Source Software for Business People and Lawyers |author=Davidson, S.J. |publisher=Leonard, Street and Deinard |date=2004 |access-date=5 July 2018}}</ref> In cases where the underlying technology is new, SDKs may include hardware. For example, [[AirTag]]'s 2021 [[Near-field communication|NFC]] SDK included both the paying and the reading halves of the necessary hardware stack.<ref>{{Cite web|url=https://venturebeat.com/2012/10/16/airtag-releasing-nfc-mobile-payments-developer-kit-wishes-apple-would-help-simply-the-ecosystem/|title = Airtag releasing NFC mobile payments developer kit, wishes Apple would help simplify the ecosystem|date = 16 October 2012}}</ref>
|