17 April 2011

[HVAonline] Thảo luận việc định hướng


Bài viết liên quan:

HVAonline thì hẳn ai cũng biết rồi, lượm 1 vài cái mình nghĩ có ích cho mình :))
 1.1 http://www.hvaonline.net/hvaonline/posts/list/38361.hva
Chào mọi người.
Mình đang tập tành viết code. Thời gian viết code cũng được một, hai năm. Nhưng hiện tại mình thấy việc lập trình của mình càng ngày càng đi vào lối mòn.

Vấn đề hiện tại của mình là như sau: Công việc lập trình của mình chỉ đơn thuần là:
Đọc hiểu yêu cầu -> Tưởng tượng trước chương trình của mình có diện mạo như làm sao và các hành vi như thế nào -> Lên google tìm kiếm mã nguồn -> Tìm được thì copy - paste từng khúc mã nguồn sao cho phù hợp - rồi chỉnh sửa cho đến khi đạt yêu cầu thì thôi.

Xem chừng nó chả đòi hỏi gì về chuyên môn sâu sắc. Với cách làm trên thì mình quá phụ thuộc vào mã nguồn tìm được trên mạng. Thú thật, nếu không tìm thấy thì mình cũng chả biết viết code thế nào nữa. Nếu không có các tutorial hướng dẫn với mã nguồn mình hoạ thì ngồi nhìn đống APIs, và đọc mô tả của APIs cũng không giúp mình viết được chương trình. Việc đọc APIs mình cũng cho là cần thiết nhưng nếu thiếu mã nguồn minh hoạ sử dụng APIs thì mình cũng không biết phải viết như thế nào nữa.

Mình không muốn phần đời lập trình còn lại của mình là đi copy-paste code của người khác về chỉnh sửa như thế mãi. Mình cũng chưa gặp nhiều lập trình viên. Số mình đã gặp thì cũng lập trình hệt như mình. Mình cần biết những lập trình viên kinh nghiệm hơn thường làm gì vì với cách làm hiện tại của mình thì thế giới phần mềm không thể phát triển như ngày này được.

Thêm nữa như đã nói, mình toàn dựa trên mã nguồn của người khác đã viết, mình chưa thể sáng tạo ra mã nguồn. Vậy thì có những điểm nào trong công đoạn lập trình mình có thể khai thác để đưa vào đó sự sáng tạo ? 

Cái bồ cần không phải là "mở rộng" mà cần thay đổi hoàn toàn tư duy lập trình. Những việc bồ làm trước đây không phải là lập trình mà chỉ là công tác "xào nấu". Lập trình ở cấp độ thủ công nhất đi chăng nữa cũng đòi hỏi suy nghĩ, phân tích và lập luận để hình thành code. Lập trình ở cấp độ master luôn luôn trăn trở là liệu mình code có đẹp nhất chưa, sạch nhất chưa, tối ưu nhất chưa, vững vàng nhất chưa.... ?

Bồ cần bắt đầu với cái này:
Hiểu rõ đòi hỏi (requirements) --> phân tích & hình thành giải pháp cho đòi hỏi ---> thực hiện coding --> thử nghiệm ---> điều chỉnh và hoàn thiện.
Bồ có thể tham khảo code của người khác nhưng tuyệt đối không bao giờ dùng code của người khác một cách lười lĩnh như vậy.

0 comments:

Post a Comment

Để lại góp ý của bạn để blog của mình hoàn thiện hơn :))