Introduction to Frameworks
To begin with the image of Frameworks in programming, it may just sound like a big coding jargon that will leave people confused and clueless, particularly a beginner.
Whereas, in practice, Frameworks are these huge chunks of pre-packaged codes that can be used extensively and recurrently to build programs on a specific platform. Since it is an abstraction of the language itself, it establishes its users with general functionality and efficacy. This way the user can emphasize on the key specific functionality and feature of his\her software product.
As an aspiring programmer, the routine work of writing and going through each line of code from start to finish is not an appropriate drill. This way the SDLC [Software Development Life Cycle] can get lengthy and with all testing and deployment processes, it can be a tiring and exhausting task. Thus, using frameworks can facilitate a lot here.
As they are developed by programming experts, they are robust and versatile. It provides several pre-built and pre-tested features upon which the user can built specific purpose application. Though frameworks cannot be modified they are extensible and allows coders to add user specialized code. They can be simplified as a whole inclusive package of programs, code segments, APIs, library, compilers and other tool sets that give the means to make software development to deployment comfortable and convenient.
A compact example –
For instance, let’s say, you’re making a fruit salad. Now the process of making a fruit salad from the scratch might take forever. You’d need to grow different fruits like berries, apples, grapes, kiwis, bananas, pineapples and a lot of them.
It’d be a lot simpler if you buy pre-grown fruits.
Frameworks are these pre-grown fruits you can get from market that’ll help you make your fruit salad much conveniently. This way you can add some seasoning and garnish it along with your liking and make it your dish, your own way.
Types of Framework
Types of Frameworks
Just like a developer should carefully decide about what programming language to learn or use, he\she should also do the same when it comes to choosing a framework. There plethora of frameworks available with the respect to the development you are working on. Be it websites and web application development or data science projects, there are various types of frameworks available.
Let us have a close look on the types of frameworks:
1. Web Application Frameworks
Web Application Frameworks [WAF] is a computer software structure that helps in development of overall web related implementations like websites, web APIs, web applications, etc. They help to cut off running and routine toil from the development process and helps to deploy it one a standardized structure on World Wide Web.
There are 2 types of WAFs:
A. Server-side Frameworks
Developers require a wide range of functionality and logics to develop any kind of web application. Server-side frameworks helps its users by handling user inputs, validating data, sending correct information, storing session states, database management, URL mapping, etc.
Top examples of server-side frameworks are-
B. Client-side Frameworks
There frameworks help to implement user interface functionalities while running inside the browser of the client. Adding some beautiful and creative animation and visual components is handled by client-side frameworks.
Top examples of server-side frameworks are-
- Vue.JS
- React.JS
- Angular.JS
- Semantic-UI
2. Data Science Frameworks
Data science frameworks help data scientists to come up with meaningful and well-presentable data upon which decisive actions and conclusions can be pulled out.
Data science frameworks on following sequence:
Ask > Acquire > Assimilate > Analyze > Answer > Advise > Act
It provides certain standards and protocols upon which tasks like data mining to data assimilation and data analysis is done.
Some top data science frameworks are-
- Apache Spark
- TensorFlow
- Pandas
- Scikit-Learn
3. Mobile Development Frameworks
These are the frameworks that are particularly designed to support and facilitate mobile app development.
With the overwhelming amount of mobile phone user now, the use of mobile development frameworks has also increased tremendously.
There are 3 basic type of Mobile development frameworks:
- Platform-specific framework
- Mobile web app development framework
- Hybrid framework
Due to increment in users of both Android and IOS, hybrid and cross platform mobile app development frameworks are in boon.
Some of the top mobile development frameworks are:
- Ionic
- Xamarin
- Flutter
- React Native
- PhoneGap
Taking all things to account, learning about frameworks and which type to learn is equally decisive as choosing a programming language. Different frameworks offer various scopes, therefore should be selected accordingly.