SERIES SOLID PHẦN 1: SOLID là gì? 5 nguyên tắc vàng cho dev xịn


Theo sách game programming pattern: một kiến trúc phần mềm tốt là một phần mềm được thiết kế như thể nó đúng hoàn toàn như dự đoán từ đầu đã đề ra, nghĩa là ta sẽ giải quyết mọi task một cách dễ dàng chỉ với một vài function với vị trí đặt function là hoàn hảo, không ảnh hưởng đến các đoạn mã đã viết, không để lại một chút "gợn" nào trên bề mặt yên bình của các dòng mã.





Đễ làm được điều đó dễ dàng, các dev như chúng ta không thể nào bỏ qua được SOLID, những nguyên lý vàng trong việc phát triển và xây dựng phần mềm( tất nhiên phải có sự kết hợp của cả design pattern, nhưng trong phạm vi bài này mình sẽ chỉ nói SOLID).





SOLID RA ĐỜI NHƯ THẾ NÀO?





Lập trình hướng đối tượng là mô hình lập trình cực kì mạnh mẽ và được áp dụng nhiều nhất ngày nay, Các tính chất đặc biệt của nó khiến nó trở nên nổi bật hơn bất kì mô hình lập trình nào khác đó chính là:





  • Encapsulation( Đóng gói )
  • Abstraction( Trừ tượng )
  • Inheritance( Kế thừa )
  • Polymorphism( Đa hình )




Tuy nhiên, không phải lập trình viên nào cũng biết cách kết hợp các tính chất này lại sao cho hiệu quả => Từ đó SOLID bao gồm 5 nguyên lý giúp lập trình viên hiểu được những cách phối hợp các tính chất này lại với nhau để tăng hiệu quả của phần mềm.





SOLID LÀ GÌ?





SOLID là viết tắt của 5 nguyên lý đầu tiên trong Object Oriented Design( OOD ) bao gồm:









( để hiểu chi tiết về các nguyên lý, bấm vào link nhé, mình sẽ chia làm 6 phần trong series này )





TẠI SAO CẦN PHẢI CÓ SOLID





Những nguyên lý này được hình thành để cho phép việc phát triển phần mềm dễ dàng và linh hoạt hơn trong việc maintain và extend khi dự án lớn dần. Ngoài ra, nó còn giúp chúng ta tránh được việc code smells( code như shit ), refactoring code,…


Nhận xét