Tôi nghĩ rằng rất nhiều người cố gắng để giải pháp quá kỹ sư. Họ thực hiện phương pháp "Adam & Eve" khi chỉ cần thực tế hơn một chút sẽ đơn giản hóa mọi thứ rất nhiều.
Các lớp chuyên biệt không phải là xấu, chúng là hệ quả tự nhiên của thiết kế phần mềm âm thanh.
Theo tôi, nhiều lập trình viên không hiểu điều này và không có cuốn sách nào tôi biết để làm cho điều này rõ ràng.
Một điều khác chắc chắn có ích là TDD, cho phép bạn hiểu "cách" bạn sẽ sử dụng lớp trong thực tế và trong nhiều trường hợp có thể tiết kiệm được một ngày, bởi vì nó cho thấy những vấn đề / hạn chế cuối cùng vào đầu ngày.
Cuối cùng, một điều quan trọng RẤT khác tôi sẽ tìm kiếm nếu tôi là bạn là các mẫu thiết kế. Các mẫu thiết kế là cách mọi người thông minh hơn bạn hoặc tôi giải quyết các vấn đề lập trình. Ý tưởng đằng sau các mẫu, đoán xem, đó là chúng không được sử dụng làm sách dạy nấu ăn, công thức nấu ăn mà bạn chỉ cần đặt ở đó, nhưng suy nghĩ và hiểu rõ về miền ứng dụng của bạn trước hết.
Việc sử dụng mô hình một cách khôn ngoan sẽ làm giảm đáng kể số lượng chi tiết bạn phải quản lý.
Một thư viện mẫu thiết kế tốt được thiết kế xung quanh nhu cầu của bạn, sẽ chứng minh vô giá. Chúng ta hãy xem một ví dụ rất đơn giản chỉ để đặt mọi thứ trong bối cảnh:
hãy tưởng tượng bạn có một biểu mẫu trong đó, khi nhấn nút, các biểu mẫu khác phải tự cập nhật. Đây là một mẫu "quan sát viên" điển hình. Bạn có một chủ đề và một số người quan sát, đăng ký chúng với chủ đề đó. Tại sao bạn cần phải thực hiện một giao diện? Bạn chỉ có thể thêm các phương thức hoặc tốt hơn là sử dụng giao diện cho người quan sát và danh sách chung cho chủ đề. Bây giờ bạn đã có những điều tốt nhất của cả hai thế giới: sự độc lập cho những người quan sát và không có những điều kỳ quặc về chủ đề này.
Hy vọng nó có ý nghĩa với bạn!
Andrea