Khi tôi mới bắt đầu lập trình, tôi đã giả định rằng một ngày nào đó tôi sẽ đến điểm mà tôi sẽ bắt đầu một dự án bằng cách ngồi xuống và phác thảo một sơ đồ UML của tất cả các lớp, sau đó khá dính vào đó. Bây giờ tôi đã lập trình được một vài năm và nó không diễn ra như vậy. Khi tôi đi qua một dự án, tôi thường nói
- "Này, tôi cần một lớp để làm _ _. Tôi không nghĩ về điều đó trước đây."
- "Đợi đã, chức năng này thực sự nên ở trong lớp đó thay vì cái này. Tôi sẽ chuyển nó qua."
- "Đây thực sự nên là hai lớp thay vì một. Tôi sẽ chia nó ra."
- "Tôi nên làm cho ba lớp độc lập này đều được kế thừa từ một lớp trừu tượng."
- Etcetera, vân vân.
Có phải đó là một dấu hiệu xấu mà tôi thường thiết kế lại như thế này khi tôi đi cùng? Điều này có nghĩa là tôi là một lập trình viên nghèo hay điều này là bình thường?