Application Framework

Application Framework

What is Application Framework?

Application framework is used to reduce the general issues which has to be faced when developing applications.

Basically this is a library component which is used to develop the fundamental structure of an application.Otherwise it can be introduced as the skeletal of an application.So that the developer can understand the scope which has to be covered when developing the application.

Ex: You have given to make a cup of tea.You have all the ingredients , tea cup and knowledge to make a tea.Even if you are the very best person in the world you have to make that tea according to the cup size.

This is what the developer also do.Developer has the knowledge to develop an application but he\she has to develop the application according to the scope.
In the example you are the developer and the tea cup is the framework.

Mostly this is used in graphical user interfaces (GUI) and web-based applications.





Examples for Application Frameworks

Most commonly used application frameworks are Angular Js,React Js,Node Js, Ruby on Rails, Laravel , Django etc. 








According to my experience React JS and Angular JS is the best frameworks to stat of working as a beginner.

Pros And Cons of Application Framework

Pros

Efficiency : With having a scope to code it is easy to developer to develop that particular application.If the framework is not there developer has to add more and more functionalities.That increases the time taken to develop the application.So that having application framework it makes the work efficient.

Security : If vulnerabilities or security holes are there developer can inform to the team which the framework has developed by.

Cost : Most of the frameworks are free so that final cost of the client will be reduced.

Support : Usually frameworks comes with a documentation which supports for the developers.

Cons

Limitation : Framework's behavior cannot be easily changed.So that the developer has to respect for the limits and the work he\she has to do.

Code is public :  Since the framework is public that can be used by the people who has the bad abilities.


Principles Of Application Framework

Basically under the principles SOLID principle is going to be discussed.

S . O . L . I . D
  • Single responsibility
  • Open-close
  • Liskov substitution
  • Interface Segregation
  • Dependency inversion

Single responsibility : "A class should have only one reason to change".This means that a class should have only one responsibility.If a class has 3 separate type of methods it is violating the principle.That class should contain same types of methods.
As an example if ABC class contains methods like "Insert Data" , "Download Files", "Insert To Database" this class contains different methods.So that it violates principle.
The proper way is to have different classes for separate responsibilities.
That is what single responsibility is.

Open - Close : "A class should be open for extension but for modification".Developer should be able to extend the code without doing any modifications for existing code.

Liskov substitution : "If S is a sub type of T, then object of type T may be replaced with objects of type S without altering any of the desirable prototypes of T "
Basically this concept is based on inheritance concept which is one of the object oriented concepts.

Interface Segregation : "No client should be forced to depend on methods it does not use".That means a client should depend on the smallest set of interface features and the fewest methods and attributes.

Dependency inversion : "High level modules should not depend on low level modules; both should depend on abstractions. Abstractions should not depend on details.  Details should depend upon abstractions."

Comments

Popular posts from this blog

"status": 404, "error": "not found", "message": "no message available", "path": "/api/employee"

There was an unexpected error (type=Not Found, status=404). No message available in Springboot