Nguyên tắc thiết kế phần mềm SOLID là tập hợp 5 nguyên tắc giúp tạo ra phần mềm dễ hiểu, linh hoạt và dễ bảo trì hơn. Bài viết này sẽ giới thiệu nguyên tắc đầu tiên – Nguyên tắc trách nhiệm đơn (Single Responsability Principle – SRP) – được áp dụng trong phát triển di động với React Native.
Nguyên tắc trách nhiệm đơn (SRP) quy định rằng: “Mỗi lớp nên phục vụ một mục đích duy nhất, được xác định rõ ràng, giảm thiểu việc thay đổi thường xuyên.”
Hãy cùng xem xét component ListRepos bên dưới và phân tích những gì nó đang làm:
Chúng ta có thể thấy component ListRepos đang thực hiện:
- Lấy dữ liệu
- Hiển thị danh sách các repositories
- Quản lý trạng thái
Theo nguyên tắc SOLID, cụ thể là Nguyên tắc trách nhiệm đơn (SRP), chúng ta có thể tách biệt các trách nhiệm này. Bước đầu tiên, hãy cô lập phần lấy dữ liệu thành một hook như bên dưới
Giờ thì component ListRepos trở nên gọn gàng hơn và không phải thực hiện quá nhiều công việc, cụ thể như sau:
Chúng ta có thể cải thiện component này hơn nữa. Nếu quan sát kỹ, mỗi item trong danh sách đang được render trực tiếp trong component chính. Chúng ta có thể tách biệt phần này và truyền những thông tin cần thiết để render thông qua props. Hãy xem:
Với cách làm như trên thì component ListRepos trở nên đơn giản hơn rất nhiều
Bằng cách áp dụng Nguyên tắc trách nhiệm đơn (SRP) trong phát triển React Native, chúng ta đã đạt được một cấu trúc nhất quán và module hơn. Trong bài tiếp theo, chúng ta sẽ khám phá một nguyên tắc khác để làm cho thiết kế phần mềm của mình tốt hơn nữa.