# it-e-10 Software Development Kit

A "Software Development Kit", or "SDK" for short, is typically a set of development tools
that allows a software engineer to create applications for a certain software package, software
framework, hardware platform, computer system, operating system or similar. It may be something
as simple as an application programming interface in the form of some files to interface to a
particular programming language, or include sophisticated hardware to communicate with a certain
embedded system. Common tools include debugging aids and other utilities. SDKs also
frequently include sample code and supporting technical notes or other supporting documentation
to help clarify points from the primary reference material. A software engineer typically receives
the SDK from the target system developer. Oftentimes, the SDK can be downloaded directly via
the Internet. Many SDKs are provided for free to encourage developers to use the system or
language. Sometimes this is used as a marketing tool. For example, "Foo Products" might
provide the "Widget SDK" for free to encourage people to use it. Thus, more people will be
encouraged to buy more of their widgets since they can program them for free. SDKs may have
attached licenses that make them unsuitable for building software intended to be developed under
an incompatible license. For example, a proprietarySDK will likely be incompatible with Free
software development. And a GPL licensed SDK will "likely" be incompatible with proprietary
software development. LGPL SDKs are typically safe for proprietary development. An SDK for
an operating system add-on (for instance, QuickTime for Mac OS) may include the add-on

software itself, to be used for development purposes, if not necessarily for redistribution. An

interesting situation arises here between platforms where it is possible to develop applications

that can at least start up on a system configuration without the add-on installed, and use a

Gestalt-style run-time "environment query" to determine if the add-on is present, and ones where
the application will simply fail to start. In other words, it is possible to build a single binary that
will run on configurations with and without the add-on present, albeitoperating with reduced
functionality in the latter situation.

Total views.

Powered by Hydejack v6.6.1