Please enable JavaScript.
Coggle requires JavaScript to display documents.
SOLID - Coggle Diagram
SOLID
Open-Close Principle (OCP)
Các Class chỉ nên mở rộng không nên sửa đổi
Khi muốn thêm tính năng mới nên tạo ra class mới để mở rộng cho class cũ
Mở trộng bằng cách thế thừa hoặc sở hữu class cũ
Lợi ích là dễ dàng bảo trì và tái sử dụng code
Dependency Inversion Principle (DIP)
High-level class không nên phụ thuộc vào low-level class
Cả 2 đều nên phu thuộc vào Interface or abstraction
Interface (abstraction) không nên phụ thuộc vào chi tiết
Các class giao tiếp với nhau thông qua interface mà không phải thông qua implement
Single Responsibility Principle (SRP)
Một class chỉ có một lý do duy nhất để sửa đổi
Một class được tạo ra chỉ nên giữ một trách nhiệm duy nhất
Một class có nhiều chức năng khi thay đổi code sẽ khó khăn và mất nhiều thời gian hơn
Liskov Substitution Principle
Object của class con có thể thay thế class cha mà không làm thay đổi logic đúng đắn từ ban đầu
Một method của class con có ý định overide của class cha thì phải giữ đúng logic của cha chỉ thêm chi tiết hơn thôi chứ ko được biến đổi sang một ý nghĩa hoàn toàn khác
Interface Segregation Principle (ISP)
Thay vì dù một interface lới nên tách ra thành các interface nhỏ