Page 51 - Ký sự code dạo
P. 51
LẬP TRÌNH VIÊN ĐÂU PHẢI CHỈ BIẾT CODE
SOLID LÀ GÌ – ÁP DỤNG CÁC NGUYÊN LÝ SOLID ĐỂ TRỞ
THÀNH LẬP TRÌNH VIÊN CODE “CỨNG”
Trong quá trình học, hầu như các bạn sinh viên đều được học một số
khái niệm OOP cơ bản như sau:
• Abstraction (Tính trừu tượng)
• Encapsulation (Tính bao đóng)
• Inheritance (Tính kế thừa)
• Polymophirsm (Tính đa hình)
Những khái niệm này đã được dạy khá rõ ràng và hầu như những
buổi phỏng vấn nào cũng có những câu hỏi liên quan đến chúng. Vì 4
khái niệm này khá cơ bản, bạn nào chưa vũng có thể Google để ôn lại
thêm.
Giới thiệu chung
Trái ngược với 4 khái niệm nói trên, những nguyên lý được giới thiệu
trong bài viết này là những nguyên lý thiết kế trong OOP. Đây là những
nguyên lý được đúc kết bởi máu xương vô số developer, rút ra từ hàng
ngàn dự án thành công và thất bại. Một project áp dụng những nguyên
lý này sẽ có code dễ đọc, dễ test, rõ ràng hơn.
Chúng còn giúp việc bảo trì code và sửa chữa dễ hơn rất nhiều (Ai
có kinh nghiệm trong ngành IT đều biết thời gian code chỉ chiếm 20-
40%, còn lại là thời gian để bảo trì: thêm bớt chức năng và sửa
lỗi). Nắm vững những nguyên lý này, đồng thời áp dụng chúng trong
việc thiết kế và viết code sẽ giúp bạn tiến thêm một bước trên con
đường thành senior (Một anh senior bên FPT Software từng dạy mình
thế).
Ok, 10 phút quảng cáo đã qua, bây giờ đến phần giới thiệu. SOLID tức
là “cứng”, áp dụng nhiều thì bạn sẽ code “cứng”. Đùa thôi, nó là tập hợp
5 nguyên tắc sau đây:
• Single responsibility principle
• Open/closed principle
• Liskov substitution principle
• Interface segregation principle
49