Sunteți pe pagina 1din 3

COMMON DEVELOPMENT QUESTIONS

Q – Common development terms


https://medium.com/@shashvatshukla/framework-vs-library-vs-platform-vs-api-vs-sdk-vs-
toolkits-vs-ide-50a9473999db

Q – Difference between framework and SDK


Framework (also explains difference b/w library and framework) – framework is
the code that hosts your code. It calls your code versus your code calling it. It is a
generic structure created before by a smarter developer to provide a skeleton
architecture with which other developers can implement particular software.
Inversion of Control is a key part of what makes a framework different to a library . A
framework embodies some abstract design, with more behaviour built in. In order to
use it you need to insert your behaviour into various places in the framework either
by sub-classing or by plugging in your own classes. The framework's code then calls
your code at these points. In a framework, unlike in libraries or normal user
applications, the overall program's flow of control is not dictated by the caller, but by
the framework.
SDK - Compare this to an SDK. An SDK is everything you need to build a specific type
of software deliverable for a specific platform -- the Java SDK (all Java apps), the
Android SDK (apps that run on the Android OS), the Windows device driver SDK
(device driver for Windows), Google App engine SDK (apps that run on Google's App
Engine), etc.
So an SDK, typically not only contains a library with an API, but also the tools like
compiler and runtime system that enables you to create applications.
An SDK is expected to offer tools to program against a certain system resource or
feature. A Framework not necessarily (although .NET offers a whole set of tools such
as the compilers, etc - but these are mandatory for it to work anyways).
So, you could develop a Framework consisting solely of libraries, but if you call it SDK
you will be expected to offer something to support development.

Q – What is architecture in software engineering


Software architecture refers to the fundamental structures of a software system
and the discipline of creating such structures and systems. Each structure comprises
software elements, relations among them, and properties of both elements and
relations.
It functions as a blueprint for the system and the developing project, laying out the
tasks necessary to be executed by the design teams.

Q – Difference between library and API

MORE ON API
API refers to a set of tools and protocols prescribed by a computer operating system or
another app by which a developer writing a program can make requests.
It defines the kinds of calls or requests that can be made, how to make them, the data
formats that should be used, the conventions to follow, etc.

As the name insinuates, and API specifies how a developer interacts with hidden methods
and classes in a library or application.
An API is a collection of software protocols that a developer can access through contract or
agreement.

MAIN DIFFERENCE
The main difference is that the library refers to the code itself, while API refers to the
interface (interfacing is done through requests to the API).

S-ar putea să vă placă și