Khi Nào Thì Coder Không Nên Viết Code?

Là một lập trình viên, viết code là phần lớn nhất trong công việc của bạn. Trong sự nghiệp lập trình của mình, bạn sẽ phải giải quyết với các loại yêu cầu khác nhau bằng cách viết các đoạn code. Tuy nhiên, câu hỏi đặt ra là: Bạn có nên viết tất cả các đoạn code được yêu cầu?

Học cách nói KHÔNG

Đây là điểm quan trọng mà hầu hết các lập trình viên (thậm chí là người có thâm niên) dễ bị nhầm lẫn. Câu hỏi này đưa chúng ta đến kỹ năng quan trọng nhất mà một lập trình viên có thể học: Biết khi nào không viết code?

Lập trình là nghệ thuật giải quyết vấn đề. Vì vậy, tự nhiên, lập trình viên là người giải quyết vấn đề. Coding chính là cách thức giải quyết vấn đề đó. Tuy nhiên, việc cứ đâm đầu vào viết code khiến chúng ta bị xoáy sâu vào vòng xoáy code, fix bug, code rồi lại fix bug. Nó khiến chúng ta không lường hết được những việc trong tương lai sẽ phải làm. Vậy nên, mỗi dòng code bạn viết cần đảm bảo:

  • Code phải được đọc và hiểu bởi các lập trình viên khác
  • Code phải được kiểm tra và và debug
  • Code sẽ làm tăng lỗi trong phần mềm hay website của bạn
  • Code có thể sẽ xuất hiện các lỗi mới trong tương lai

Như Rich Skrenta đã viết, code là kẻ thù của chúng tôi. Code là xấu. Nó đòi hỏi phải bảo trì định kỳ, có bug cần được fix và các đoạn code cũ phải được điều chỉnh.

Bạn càng có nhiều dòng code thì tức là sẽ càng có nhiều chỗ để ẩn lỗi. Việc kiểm tra hoặc biên dịch sẽ kéo dài hơn, càng mất nhiều thời gian để một LTV mới tìm hiểu về hệ thống của bạn. Nếu bạn phải tái cấu trúc thì có nhiều thứ khác để chuyển đổi. Hơn nữa, nhiều code thường có nghĩa là ít linh hoạt, một mớ hỗn độn.

Phần mềm không có những dòng code thừa thãi là phần mềm dễ bảo trì, tồn tại lâu dài và dễ sử dụng. Lập trình viên hiệu quả nhất là người giải quyết được sự thừa thãi đó. Vậy nên bạn hãy học cách nói Không với những yêu cầu không cần thiết.

Làm thế nào bạn có thể biết khi nào thì không nên code?

Xác định mục đích

Bạn làm việc trong một dự án và phải suy nghĩ về các tính năng cần thực hiện. Nhiều tính năng chưa hoàn thành hoặc chưa sử dụng đến, hoặc đơn giản là nó quá thừa khiến cho ứng dụng hay website bị quá tải. Bạn nên biết những gì là cần thiết cho dự án của bạn để tránh phạm sai lầm này.
Hiểu mục đích cần phải làm gì và định nghĩa cốt lõi của phần mềm là bước đầu tiên để biết khi nào không nên viết code.

Ví dụ thế này, bạn muốn viết phần mềm quản lý email. Và với mục đích đó, gửi và nhận email là hai tính năng thiết yếu cho dự án của bạn. 
Vì vậy, bạn nên nói KHÔNG với bất kỳ yêu cầu tính năng nào có thể không liên quan đến việc gửi và nhận email. Đây là thời điểm bạn có thể chắc chắn chính xác rằng bạn biết khi nào không cần code.

Đánh giá việc nào là cần thiết

Một khi bạn biết điều gì là thiết yếu cho dự án của bạn, bạn sẽ có ý thức vào lần tới khi bạn đánh giá các yêu cầu về code. Những tính năng nào nên được thực hiện? Code nào đáng để viết? Bạn sẽ đặt câu hỏi cho tất cả mọi thứ bởi vì bạn luôn hiểu một điều rằng code không cần thiết có thể giết chết dự án của bạn.

Điều gì xảy ra nếu bạn nói CÓ với mọi tính năng?

Chỉ có hai hoặc ba file nguồn khi bạn bắt đầu dự án của mình. Tất cả trông thật đơn giản. Chỉ mất vài giây để biên dịch và chạy code. Bạn biết nơi để tìm chính xác những gì bạn đang tìm kiếm.


Sau đó, khi dự án phát triển, ngày càng nhiều file nguồn lấp đầy thư mục của bạn. Mỗi tệp mã chứa hàng trăm LOC. Để tổ chức tất cả, bạn sẽ cần nhiều thư mục. Ghi nhớ các chức năng gọi các chức năng khác sẽ khó khăn hơn và theo dõi các lỗi đòi hỏi nhiều công việc hơn một chút. Việc quản lý dự án của bạn trở nên khó khăn và bạn cần nhiều lập trình viên trong team của mình. Chi phí truyền thông tăng lên khi số lượng lập trình viên tăng lên. Hiệu suất công việc càng ngày càng chậm.
Cuối cùng, dự án trở nên rất cồng kềnh. Thêm các tính năng mới là vấn đề lớn. Ngay cả những thay đổi nhỏ cũng mất hàng giờ. Fix bug cũ thì sẽ đẻ thêm ra bug mới. Bạn bắt đầu trễ deadline bởi vì bạn đã không biết khi nào không nên code, bạn đã nói CÓ với mọi yêu cầu tính năng có thể. 

Hãy dừng lại một nhịp, suy nghĩ về con đường xa hơn thay vì nhận yêu cầu và dùng hết tâm sức để viết code. Điều này sẽ làm cho cuộc sống của bạn dễ dàng hơn và làm cho phần mềm/website của bạn đi dài lâu hơn.
Một trong những ngày làm việc hiệu quả nhất của tôi là vứt bỏ 1000 dòng code. – Ken Thompson

Tạm kết

Coding là một công việc thú vị. Đừng bao giờ đánh mất sự hứng thú trong công việc nhưng cũng không nên bị cuốn theo những thứ lan man. Tôi đã nhận được nhiều bài học về việc khi nào nên code và không sau khi phạm phải những sai lầm. Bạn cũng sẽ phạm sai lầm, và bạn cũng sẽ học hỏi từ những vấp ngã đó. Ngay bây giờ, ít nhất thì bạn có thể có ý thức hơn nếu bạn có thể học hỏi từ kinh nghiệm của tôi.

Keep coding but know when to say no to coding.

Tham khảo khóa học lập trình web 6 tháng, đảm bảo 100% công việc đầu ra!

Nguồn: https://codelearn.io/sharing/khi-nao-thi-coder-khong-nen-code


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Bài viết liên quan

Leave a Reply

Your email address will not be published.

TÀI LIỆU DEV WORLD
Cẩm nang phát triển bền vững với nghề lập trình!