
TypeScript 4 Design Patterns and Best Practices
By :

The term programming paradigm refers to putting certain concepts and rules under a framework that you can use to design programs and algorithms. The term functional programming relates to a programming paradigm that uses functions as the main building blocks to form large computer programs.
We'll make a distinction now between what we have learned so far about design patterns and what we will learn now about design concepts as they have a different meaning.
Design concepts are the building blocks of any programming paradigm. For example, the basic concepts of Object-Oriented Programming (OOP) are encapsulation, abstraction, inheritance, and polymorphism. If you don't have encapsulation, then you can't protect access to private object members, making it difficult to apply certain design patterns.
Under the functional programming paradigm, there are key concepts that you have to use to gain maximum benefits. We...