Difference between SDK and Framework

Key Difference: SDK stands for Software Development Kit. It is a set of software development tools. This set is used for creation of applications. Framework (Software Framework) is basically a platform which is used for developing software applications. It provides the necessary foundation on which the programs can be developed for a specific platform. Thus, SDK and Framework complement each other, and SDKs are available for frameworks.

SDK stands for Software Development Kit. It includes tools and utilities required for the development of the applications. It often includes files to interface to a particular programming language, sophisticated hardware to interact with an embedded system, debugging tools, etc. It also includes sample code as well as some other documentation as reference material.

One commonly used SDK is the Microsoft Windows SDK. It is a kit from Microsot. It includes header files, libraries, samples, documentation, etc, which are required for the development of the applications specifically for Microsoft Windows and .NET Framework.

Framework (Software Framework) is basically a platform which is used for developing software applications. It provides the necessary foundation on which the programs can be developed for a specific platform. The definition has a broader meaning, as it may include many types of entities. For example- it may include the necessary classes and functions. These classes and functions serve many purposes like they may be used to process input or manage hardware devices. There are numerous frameworks available in the market. Cocoa framework is used for MAC OS X.

SDK provides the necessary tools for the application development, and Framework provides the required platform for development of applications. Therefore, both these terms are closely related to each other. Therefore, many times they are used together, like in .NET Framework SDK. SDKs are available for the frameworks. Thus, they support each other. The term framework may also refer to a specific framework within a larger programming environment.

Comparison between SDK and Framework:

 

SDK

Framework

Definition

SDK stands for Software Development Kit. It includes tools and utilities required for the development of the applications. It often includes files to interface to a particular programming language, sophisticated hardware to interact with an embedded system, debugging tools, etc.

Framework (Software Framework) is basically a platform which is used for developing software applications. It provides the necessary foundation on which the programs can be developed for a specific platform.

Application Programming Interface

Generally, it includes one or two API

Technically, a framework includes an API

Key Feature

Tools for developing applications

Platform for developing applications

Example

Windows 7 SDK

Android Application Framework for Android

Image Courtesy: eioboard.com, journal.code4lib.org

Most Searched in Electronics Most Searched in Society and Culture
Most Searched in Pregnancy and Parenting Most Searched in Sports
TFT vs LCD
Board of Directors vs Management
Pong vs Ping Pong
Antivirus vs Firewall Software

Add new comment

Plain text

CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.