SOLID Principles

What is SOLID principles? SOLID principles are the design principles allowing us to manage and control almost problems of the software design. They are a set of best practices that also helps developers to code and test much easier and more effective. Therefore, when the scale of the application grows bigger and bigger, SOLID can

What is SOLID principles?

SOLID principles are the design principles allowing us to manage and control almost problems of the software design. They are a set of best practices that also helps developers to code and test much easier and more effective. Therefore, when the scale of the application grows bigger and bigger, SOLID can help you to easily maitain the app.
Let’s have a look at each principle one by one. SOLID is the acronym of:

  • The Single Responsibility Principle
  • The Open-Closed Principle
  • The Liskov Substitution Principle
  • The Interface Segregation Principle
  • The Dependency Inversion Principle

1. The Single Responsibility Principle

A class should have one reason to change.

What does this mean? This means every class in your code should have only one job to do. Everything in that class should be related to a single purpose.

2. Open-Closed Principle

The Open-Closed Principle requires that classes should be open for extension and closed to modification.
That mean if you have a new logic, we have to easy to write as a new class, but it’s very hard to modified old class.

3 Liskov Substitution Principle

The Liskov Substitution Principle states that subclasses should be substitutable for their base classes. That mean, if you have class B is a sub-class of class A, and some logic need class A to handle logic, we should be able to pass an object of B in this logic without any error.

4 Interface Segregation Principle

Segregation means keeping things separated, and the Interface Segregation Principle is about separating the interfaces. That mean all logic we have, should be separated, and the class not need to write logic that they do not handle

5 Dependency Inversion Principle

The Dependency Inversion principle states that our classes should depend upon interfaces or abstract classes instead of concrete classes and functions. This mean our class should not depend on what specific, it’s should depend on what abstract

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ