Rule #6: Configure, don’t integrate - Cấu hình, không tích hợp
Chi tiết sẽ làm lộn xộn code của bạn, chúng thay đổi thường xuyên (như các hằng số, chuỗi…). Mỗi thay đổi trong code tiềm ẩn nguy cơ phá vỡ hệ thống. Để loại trừ điều này, bạn nên đưa các chi tiết ra khỏi code, đặt chúng trong các file cấu hình. Code cấu hình còn được gọi là “soft code”, nó thích nghi với sự thay đổi.
Bát cứ khi nào bạn phải sử dụng chi tiết trong code của mình, dừng lại và đặt chúng ra ngoài. Một chút thời gian lúc này sẽ đem lại thời gian hữu ích gấp 10 lần trong tương lai.
Rule #7: Refactor Early, refactor often - Cải tiến code sớm, cải tiến thường xuyên
Bạn nên cải tiến code, nhưng khi nào? Sau đây là một vài gợi ý:
Tuy nhiên, đừng refactor một cách mù quáng, bạn cần phải tỉnh táo và cẩn thận khi thực hiện những cải thiện, nếu sơ suất, việc này sẽ gây ra hậu quả trái ngược với mong muốn của bạn:
Rule #8: Design to test - Thiết kế khả test
Nếu bạn là một người ưa sự hoàn hảo, có lẽ bạn sẽ viết test trước khi code (phương hướng tiếp cận này còn được gọi là Test-Driven Development), nhưng điều này là không đơn giản. Điều quan trọng nhất tôi muốn đề cập là bạn cần phải luôn hướng code của mình tới mục tiêu là khả test - nói cách khác là viết code sao cho dễ test nhất. Dựa theo luật 5 - Law of Demeter sẽ giúp bạn luôn viết code có tính đóng gói tốt, từ đó dẫn tới việc test thuận lợi hơn.
Nếu một phần của code là khó (hoặc không thể) test, bạn cần cải thiện code (refactor) tới những thành phần nhỏ hơn.
Rule #9: if you’ve found a bug, write a test - Nếu bạn tìm thấy một bug, viết test
This is a very sane approach: whenever a bug is found in production, first thing to do is to write a test that reproduces the issue. That way you’ll be sure to understand the bug correctly before thinking at the fix and you’ll have a non-regression test that will make sure the bug won’t happen again.
Rule #10: Know when to stop - Biết khi nào nên dừng lại
Những lập trình viên giống những người hoạ sỹ, họ vẽ nên những bức tranh ở bên ngoài tâm trí của họ. Điểm cốt yếu ở dây là họ không biết khi nào, hay tại đâu họ nên dừng lại. Hãy nhớ là phần mềm hoàn hảo không tồn tại (Chính xác là bạn không thể viết được một phần mềm hoàn hảo, cho dù bạn có cố gắng thế nào chăng nữa)
Khi nào một bức tranh được hoàn thiện? Chỉ người hoạ sỹ có câu trả lời. Bạn là nghệ sĩ tạo nên những dòng code, và bạn biết khi nào nên dừng lại!
Source: [http://blog.sukria.net/2012/01/06/the-10-rules-of-the-pragmatic-programmer/]
[http://blog.sukria.net/2012/01/06/the-10-rules-of-the-pragmatic-programmer/] http://blog.sukria.net/2012/01/06/the-10-rules-of-the-pragmatic-programmer/
Nguyen Dang Quang PROGRAMMING
post format