The purpose of the principle is to ruce

These principles determine how functional elements are combin into software modules and how these modules should interact with each other. They were originally summariz in the article “Design Principles and Design Patterns”. Some of them have long been known. Practical experience proves the usefulness and efficiency of using principles: if you follow them, your code will become more readable, flexible, and maintainable. Traditionally principles are assign to domains but they may also apply outside. Let’s consider each one in more detail.

Single Responsibility Principle

A module must have one and only one reason for change. In Canada Telegram Number Data other words, a module should only be responsible for one aspect of functionality. During the development of a software system change requests are receiv from interest parties. These can be different groups of developers, testers, system users, etc. Each group is interest in a different part of the system’s functionality. Modules should be design in such a way that change requests to each module only come from a similar set of interest parties. the impact of changes in one part of the system on the functionality of other parts.

Telegram Data

Violating this principle leads

To complications in code support and the risk of bugs and side China Email List effects. The principle of being open to expansion and clos to change (open-clos principle) The principle of being open to expansion and clos to change (open-clos principle). The design of a software entity should allow extending its behavior without changing existing code. To achieve this the principles of and are often us. Violating this principle may result in previously stable working code neing to be chang every time a new feature is add. Liskov Substitution Principle ( ) If a type is a subtype of then any property that is satisfi by all objects of the type must also be satisfi by all objects of the type.