Docs học tập
Backend nền tảng

I1 · Nguyên lý SOLID

S – Single Responsibility: mỗi class một nhiệm vụ.

I1 · Middle · cốt lõi

5 quy tắc để code như đồ Lego: mỗi mảnh làm một việc, lắp thêm được mà không phải phá mảnh cũ.

Cốt lõi

  • S – Single Responsibility: mỗi class một nhiệm vụ.
  • O – Open/Closed: mở để mở rộng, đóng để sửa đổi.
  • L – Liskov Substitution: lớp con thay thế được lớp cha.
  • I – Interface Segregation: interface nhỏ, chuyên biệt.
  • D – Dependency Inversion: phụ thuộc vào abstraction, không vào cài đặt cụ thể.

Đánh đổi

OOP sạch, dễ bảo trì, dễ mở rộng. Áp dụng quá tay → over-engineering.

Trong thực tế

Nền tảng của hầu hết codebase hướng đối tượng dễ bảo trì.

Bug thường gặp

Một class "Service" vài nghìn dòng làm mọi việc → sửa tính năng này làm hỏng tính năng khác.

Tự hỏi lại

Cho ví dụ vi phạm Liskov (Square kế thừa Rectangle).

On this page