A framework is a tool and software that is used to develop applications.
As we all know that software developing task is a very time-consuming task and very complex process but the framework is the solution for both these problems.
If you are a software developer, then you must be using the framework to develop a software, website, or mobile application and if you are a beginner then we want to tell you that you should use the framework to do software development.
This is a tool that provides many features that make the development task easy. In today’s article, we will learn what the framework is? What the difference between framework and library?
If you have ever gone to give an interview for a software developer, then you must have been asked which framework knowledge you have and if you are a college student,
then hardly you will know what this framework is? Let us talk about this topic in today’s article.
What Is Framework?
The framework is made up of two words. Frame + Work means a frame in which some work can be done or some process can be done, it is called a framework,
it makes our task easy.
For example, if you have a photo frame, then you can put a photo of the same size, you can also put a photo smaller than the size of the frame,
but a photo bigger than that will not be seen in that means it already has a design pattern. According to that, you have to work.
It is a software designing tool that has been created by many experienced developers. It is used to develop a software application,
web application and mobile application because with its help we can develop any application very fast. Many functionalities are already defined in it, which makes our task easy.
Any framework works on a designing pattern like CodeIgniter 3 MVC (Model, View, Controller) pattern.
Understand in simple terms, it is a frame in which we write our code according to its structure and develop the application.
Just as a sculptor has a framed frame to make an idol in which he puts clay and the idol is ready.
This benefits the sculptor that the idol becomes very beautiful in a very short time.
Developing a software application is a very time consuming and complex process and the framework makes that complex process even easier.
There is already a lot of functionality in the framework so that it takes very little time for us to develop the application as if there is a code written in it for database connection in which we need only the name of the database, user, password, etc. This has to be set, this means that we do not have to think much to make a connection to any kind of database.
Why The Framework Is Used?
Now a question comes in the mind of every beginner,
why do we use the framework, what is the benefit of this? So let’s know about some of its benefits:
There are many such features in the framework, due to which any company uses it to create web applications, software applications, and mobile applications.
Like we gave the example above of the sculptor, that sculptor could make an idol without any frame, but there are many problems in it, such as designing an idol, etc.
If he uses the frame, then he will put ordinary clay in it and will do some process on it.
In the same way when we make software, we need many such features in it,
which is a bit complex to build by itself, such as security features. Security features are most important in every application.
Some advantages of using the framework are given below:
- Security features are already built-in it, due to which the application is more secure and
- we do not have to worry about security separately.
- Library, helpers, controllers of many features already exist which make software development tasks easy like making URL SEO friendly.
- In this, separate sections are made for all the tasks, due to which the code is very easy to write and understand.
Types Of Framework
According to different frameworks there are different types,
but when we talk about software development here, the frameworks are of the following types, such as:
- Web application framework
- Data Science Framework
- Mobile application framework
- Web application framework: Web application framework is used in website development. It has different frameworks in different languages such as:
- CodeIgniter (PHP)
- Laravel (PHP)
- CakePHP (PHP)
- Django (Python)
- Data Science Framework: It is used in the field of machine learning that means Artificial machine making.
- Artificial machines are machines that are made by humans such as Robots:
- It consists of the following types of the framework in which some of the frameworks are listed here.
- Apache Spark
- Mobile Application Framework: In today’s day mobile users have become the most,
- due to which the demand for mobile applications has increased
- and at the same time, the demand for mobile application developers has also increased.
- There are many frameworks to develop mobile applications and many new frameworks are also being developed. Here are some framework lists.
- Native Script
- React Native
What Is Library?
Libraries are modules and codes that are already built. These modules and codes can be used while programming.
The advantage of these libraries is that many functions are already defined in them,
so while programming, the code of these tasks does not need to be written to the programmer,
but only the code already written in the library is accessed.
To access the code of the library in the program, the program has to be linked to the library.
To link the library, the directory path of the library has to be given in the program file. If both the program file and the library folder are present in the same directory,
you can access the modules of the library in the program without giving a directory path.
How to access the modules and code of the library depends on which programming language the library is written in.
For example, if the library is built in C language then the modules have to be accessed by the function,
in contrast, if the library is OOP Language such as Java is built-in, so objects have to be used to access the code of the library.
Whatever language the library is built-in, only programs written in that language can access that library.
For example, a library created in C can only be accessed by a C program or a library created in Java can only be accessed by a Java program.
However, nowadays such software modules also come with the help of which programs of another language can access the library of another language.
Whenever the compiler package of a language is downloaded, there is already a lot of libraries along with the compiler.
like file handling library, networking library, graphics library, maths library etc.
Framework V/S Library
Most people understand that the Framework is a collection of many libraries, whereas this is not true because every Framework is not made up of just a library,
to make it helpers, hooks, controllers, etc. Looks like. Let us know what the real difference is between the two.
A library is a collection of pre-compiled routines that means a library is made up of many functions, variables, parameters (which have already been compiled and tested).
While a framework has lots of libraries, hooks, helpers, controllers, models, etc. Are made up of.
The functions of the library are called by our code where our code is called caller and library functions are called callee.
This process is called “In Control” which means we can call the function of the library whenever we need it.
Whereas the code of the framework calls our code and not the code of our code framework, and here the whole process turns upside down.
Due to which it is called “Inverse of Control (IoC)“.
Let us understand from a real life example.
When a student is staying in his house, he can keep his books, bags anywhere in any way but when he goes to school, books, bags are to be kept there in a proper way.
In the same way, if you create your own library, you can put it anywhere and you can make a function
and call it in any way but when you write the code in the framework there are some rules. You have to write the code only by following that rule.
Contributed By :- Suhasini Mishra