Application Framework and Software Engineering principles
Overview of this blog?
This is written to get knowledge about JavaScript, version controlling, No SQL, Mongo dB and engineering principles.
SOLID: First 5 principles of Object-oriented Design
Introduction
These principles establish practices that lend to developing software with consideration for maintaining and extending as the project grows.
SOLID stands for:
S — Single responsibility principle
O — Open-closed principle
L — Liskov substitution principle
I — interface segregation principle
D — dependency Inversion principle
Single responsibility principle
“A class should have one and only one reason to change, meaning that a class should have only one job.”
Open-closed principle
“Objects or entities should be open for extension but closed for modification.”
Liskov Substitution Principle
“Let q(x) be a property provable about objects of x of type T. Then q(y) should be provable for objects y of type S where S is a subtype of T.”
Interface segregation Principle
“A client should never be forced to implement an interface that it doesn’t use, or clients shouldn’t be forced to depend on methods they do not use.”
Dependency inversion principle
“Entities must depend on abstractions, not on concretions. It states that the high-level module must not depend on the low-level module, but they should depend on abstractions.”
Java Script Framework
JavaScript is a multi-paradigm language that supports event-driven, functional, and imperative programming styles. JavaScript was initially used only for the client-side.
A software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code. JavaScript framework is an application framework written in JavaScript where the programmers can manipulate the functions and use them for their convenience.
What are the JavaScript Framework?
Angular , React , Vue.js, Meteor, Mithril, Node.js, Polymer , Aurelia, Backbone.js
JavaScript Class
Use the keyword class
to create a class.
Ex:
class Car {
constructor(name, year) {
this.name = name;
this. year = year;
}
}
JavaScript Object
let myCar1 = new Car (“BMW”, 2020);
let myCar2 = new Car (“Audi”, 2021);
JavaScript class is not an object.
Callback in JavaScript
A callback function is a function passed into another function as an argument, which is then invoked inside the outer function to complete routine or action.
Promises in JavaScript
The Promise
object represents the eventual completion (or failure) of an asynchronous operation and its resulting value.
Version Control
Version control is a component of software configuration management.
There are two types of version control.
o Centralized version control
o Distributed version control
GitHub
Version control software such as Git, version control is much smoother and easier to implement. Using an online platform like GitHub to store your files means that you have an online backup of your work.
GIT Commands
o Git commit
o Git push
o Git pull
o Git status
o Git checkout
NoSQL
A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational database.
MongoDB
MongoDB is an open -source document database build on a horizontal scale-out architecture that uses a flexible schema for storing data. Mongo dB is NOSQL database.
What are the Queries in MongoDB?
Insert, Find ,Update, Remove
Conclusion
You can get some basic knowledge about JavaScript basics, Version controlling and Mongo DB. Also, the software engineering principles are described briefly. Mainly these essential points are discussed here.