Introduction
JavaScript is a well known web development tool for a developer. Java Scripts supports both front end and back end of web application. While most of the languages are Object Oriented language but JavaScript is an Object Based Language. In this Blog we are going to discuss about the most trending JavaScript frameworks used in the industry.
What Is Application Framework
Application framework is a skeleton or a complete tool which reduces the developer task in building an application. These frameworks are used in both front end and as well as back end.
When we talk about JavaScript Framework, Angular, NodeJS, React, Bower and Grunt can be considered as the most popular frameworks in the industry among a ton of frameworks.
Object Based Principles
Object Based are similar kind of practices like OOP concepts. Here we can categorize these principles into main three groups
- Single Responsibility
- Open-close
- Liskov substitution
- Interface segregation
- Dependency inversion
It is always good to work according to best practices, above principles lead us to best approach of web development. In this introduction section I am going to discuss about the principles that should be used in any kind of frameworks.
Single Responsibility Principle : A class or function should have only one job assigned. This means that each class or function must be loosely coupled, it make developer easy to make a change in future.
Open-Close Principle : “Object or entities should be open for extension but closed for modification”. This definition determines the abstraction used in oop concepts. If he have class that implements a function to calculate something and return. And thing that if we have another same kind of calculation but with different logic then as a best practice we have to depend on a abstract function which will extend the same function in different place.
Liskov Substitution Principle : This principle describes the exact same thing in Inheritance. There must be a real connection between base class and sub class. Child class must override the the functions in the base class and meaning of the function shouldn’t be changed.
Interface Segregation Principles : Developer should implement only the functions that are really used by client. Have to group the functions into different interface according to client.
Dependency Inversion Principle : When the development is doing in layered approach higher level modules mus not be depend on lower level layers, but they should depend on abstraction.
Guidance to Approach the Solution
Think through the Problem : It is good practice to think about the solution before starting to code because when you start to develop without thinking the solution you can be lost among codes. Most importantly don’t afraid to clear your doubts. It can be domain or programming. You have to be clear on what you are developing.
Divide and Conquer : Divide the complex problems into smaller ones, then you can easily understand what need to be done next.
KISS : “Keep It Simple and Stupid”, keep you solution simple don’t make it complex.
Learn from mistakes : Always take a mistake as an opportunity to learn the correct thing. Everyone make mistakes but you have to overcome that.
Reason why Software Exists : Keep in mind why you are building the software. You have to keep a picture of the application.
You won’t be the end user : End users are mostly common people who are not developers, don’t assume that user will understand technical things. Keep the system more user friendly as you can.
Guidance To Implement the Solution
YAGNI – You aren’t gonna need it : If some code phrases or functions are currently not useful, stop developing that things and put effort in useful function.
DRY – Don’t repeat yourself : Always make function that can be reusable and reuse the code every time it’s possible.
DRITW – Don’t reinvent the wheel : Most of the time when you are enhancing an application solution for you problem can be already exists in the program. Don’t re write those codes again and use the same solution for you problem.
Kaizen – Leave it better then you found it : When you are fixing a bug or enhancing an existing application make it better than you received. Always go through the solutions and determine everything is work fine.
Debugging is harder than code : When you are working for a organization, you colleagues have to enhance the solution you build. There for you have to make the code more readable.
Those are the common guidance that a developer must be aware. It always good to follow the principles and guidance as industry expects a good employee who can work with collaboration with other mates.









