Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is an SDK? (C++)

Tags:

c++

sdk

Just in general terms, for a noobie. I apparently need an 'SDK' to install something; what is this?

like image 918
Xenoprimate Avatar asked Aug 18 '09 00:08

Xenoprimate


People also ask

What is an SDK used for?

SDKs are designed to be used for specific platforms or programming languages. Thus you would need an Android SDK toolkit to build an Android app, an iOS SDK to build an iOS app, a VMware SDK for integrating with the VMware platform, or a Nordic SDK for building Bluetooth or wireless products, and so on.

What is the difference between SDK and IDE?

SDK = Software Development Kit... the tools that do the tasks you mentioned above. IDE = Integrated Development Environment... A GUI for accessing the SDK tools and then some (features differ).

What is the difference between an API and an SDK?

An SDK provides a complete development kit for software development for building applications for a specified platform, service, or language. An API is used to facilitate communication between two platforms.


2 Answers

An SDK is a set of libraries which hold reusable code that you in turn use to develop applications. Whether those applications will run in Windows, on an XBOX, and iPhone, in a Flash application, etc. determine what SDK you should be using.

Take the iPhone for example. To write an iPhone application, you write code in a language called Objective-C (which looks and feels just like C, but with Smalltalk's object-model). Anyway, every time you write an app, you don't need to rewrite the code that draws text on the actual screen or registers the actual screen-touches. Instead, Apple provides the code that all application developers will need to do simple things.

Likewise, if you're writing for Windows, there are libraries to do things like draw an actual window, or connect to the network stack.

All of these common libraries, along with some other tools, make up an SDK.

For C++, you will probably see a lot of mention of Boost. This is not an SDK, but rather a set of libraries that contain code that a lot of other developers find useful.

What platform are you trying to write for? Are you just getting into C++ in Windows and looking to get started? Are you trying to write a game for some console?

like image 159
Alex Avatar answered Sep 21 '22 09:09

Alex


"Software Development Kit" - a set of tools and libraries that let you develop software.

An example would be the iPhone SDK, which lets you develop software for the iPhone.

like image 27
RichieHindle Avatar answered Sep 21 '22 09:09

RichieHindle