Làm sao để luyện tập kĩ năng thiết kế code
Mình học lập trình cũng được hơn 1 năm rồi. Mình chủ yếu học java và android.
Mình cảm thấy mình yếu về mặt design code, nghĩa là cách xây dựng các class, cách kế thừa, design pattern gì đó , đại loại như vậy.
Mình có tham khảo mấy bạn khác thì nói trong công ty họ thiết kế class (UML) trước khi viết nhưng mình thì phải viết code rồi lúc đó mới biết mình nên viết gì, chứ xây dựng trước thì lại ko hình dung được nên làm thế nào. Có xây dựng trước rồi lúc viết cũng ko ăn nhập gì với cái xây dựng.
Mình bị nhận xét là code gì ko có OOP gì het vay, viết code sao cứ như chắp vá ko có một logic gì cả.
Mình rất muốn cải thiện điều này nhưng ko biết nên cải thiện thế nào, mọi người có ebook hay có kinh nghiệm gì chỗ này thì giúp mình với. Làm sao để design code tốt hơn. Cảm ơn ạ !
Kinh nghiệm là cứ làm rồi dần dần sẽ quen thôi nên hình dung ra cấu trúc trước khi bắt tay vào code, lý thuyết là những cái gì dùng nhiều lần thì để riêng ra
Hiểu rõ lập trình hướng đối tượng là gì thì sẽ làm được thôi. Nhiều bạn học chung với mình đến lúc ra trường rồi mà vẫn không hiểu OOP là gì. Còn về tư duy thiết kế lớp như thế nào cứ đọc sách nước ngoài là biết thôi.
Bạn có thể giới thiệu một vài cuốn sách được ko
clean code và code complete 2 cuốn này tư duy thiết kế code đúng như bạn cần
Thử đọc quyển Head First Design Patterns
Về ác vấn đề chung chung, nên đọc quyển Head First Software Development
Cảm ơn anh Đạt nhiều
Mình cũng đang cần, tập code OOP mà cứ loạn xạ các class lên
Thực sự mình đang đi làm cũng cảm thấy lập trình quan trọng nhất là tư duy design chứ không phải là về mặt thuần thục ngôn ngữ. Ở công ty mình làm đa phần là có UML do các engineer kinh nghiệm hơn gửi về, code theo rất là đơn giản và sếp cũng đánh giá cao khả năng design hơn là code vì code không thì bạn sẽ là thợ code chứ không phải engineer đúng nghĩa .Mình nghĩ là càng làm nhiều năm, engineer kinh nghiệm sẽ ít code hơn mà dần chuyển sang làm design. Về việc nâng cao khả năng này chắc là số năm kinh nghiệm sẽ giải quyết được nhưng nếu bạn nào có sách về design software cho mình xin nhé, tiếng anh hay việt đều ok.