Liệu có nên xóa phần code không dùng nữa?

Bài viết được dịch từ blog Coding Horror

Nói chung tôi không thích những dạng bài viết kiểu “Me, too!”, nhưng tôi phải làm một ngoại lệ cho bài viết tuyệt vời của Ned Batchelder về việc xóa code. Tôi cũng thường xuyên gặp phải hiện tượng này với những lập trình viên khác, và nó gây cho tôi sự bực bội khó chịu, mặc dù tôi không thể xác định chính xác lý do tại sao. Vâng, sau khi đọc đoạn trích này từ bài viết của Ned thì tôi đã có thể:

Bạn nên xóa phần code không dùng nữa để tránh gây khó khăn cho đồng nghiệp khi họ đọc code của bạn.Bạn nên xóa phần code không dùng nữa để tránh gây khó khăn cho đồng nghiệp khi họ đọc code của bạn.

Nếu bạn có một đoạn code mà bạn không cần đến chút nào nữa, thì nên xóa quách nó đi hơn là để nó ở trạng thái disabled: nhằm giảm bớt nhiễu và sự không chắc chắn. Một trong những kẻ thù lớn nhất của một lập trình viên là nhiễu và sự không chắc chắn trong code của anh ta, bởi vì chúng ngăn cản anh ta có thể làm việc với nó hiệu quả hơn trong tương lai.

Một đoạn code ở trong trạng thái disabled sẽ là nguyên nhân của sự không chắc chắn. Nó tạo ra những câu hỏi trong tâm trí của những lập trình viên khác khi họ đọc đoạn code đó:

  • Tại sao đoạn code đó trước đây lại được viết như vậy nhỉ?
  • Tại sao cách viết mới này lại tốt hơn vậy ta?
  • Liệu mình có nên chuyển nó lại kiểu viết cũ không nhỉ?
  • Mình sẽ quyết định thế nào đây?

Nếu câu trả lời cho một trong những câu hỏi trên là quan trọng để người ta phải biết, thì bạn hãy viết một comment mô tả về nó. Đừng để cho các đồng nghiệp của bạn phải khổ sở đoán già đoán non.

Tôi đã trở nên tức giận khi bị buộc tội là đã xóa mất phần code ở trạng thái disabled của một ai đó nhiều hơn một lần. Tôi nói rằng, hãy nói cho tôi biết lý do tại sao lại không xóa nó, và nếu hợp lý thì tôi sẽ không xóa. Nếu không thì đó là điều nên làm. Trong kinh nghiệm của bản thân mình thì tôi thấy loại code mà kiểu như “oh, tôi sẽ sử dụng lại phần này sau” thì thực ra sẽ chẳng bao giờ được sử dụng lại nữa, vì vậy bạn hãy xóa quách cái của nợ đó đi để khỏi bận tâm cho những lập trình viên tiếp quản phần code đó trong tương lai.

Các bài viết liên quan:

Về tác giả bài viết:

Jeff_atwood_coding_horrorJeff Atwood là một chuyên gia công nghệ tại Mỹ, hiện đang sinh sống và làm việc tại Berkeley, CA. Anh là một kỹ sư phần mềm chuyên về công nghệ Microsoft .NET, và là một blogger nổi tiếng trong cộng đồng công nghệ với blog Coding Horror, anh là người sáng lập và kiêm Giám đốc điều hành (CEO) của trang web hỏi đáp uy tín Stack Overflow và cũng là đồng sáng lập của Stack ExchangeDiscourse.

13 comments on “Liệu có nên xóa phần code không dùng nữa?

  1. Mình thì không có thói quen để disabled, nhưng mình có thấy vài người bạn của mình hay làm thế. Và đã làm thử 1 lần duy nhất =))) thật sự nó rất rất rất rất là vô dụng và rắc rối.

  2. Thực ra có nhiều cách để không xóa code. 1 là để trang thái disable và tác giả phải ghi rõ nguyên nhân tại sao giữ lại, dùng để làm gì. Cho đoạn code đó vào 1 region để những người khác đọc có thể bỏ qua không quan tâm đến.
    Trước khi xóa thì nên confirm hay nói chuyện trước với tác giả đoạn code đó thì tốt hơn là lẳng lặng xóa đoạn code đó đi

  3. Mình nghĩ cũng không nên cứng nhắc lắm. nên tính tới khả năng sử dụng lại, nếu nhận biết khả năng sử dụng lại cao thì ko nên xoá mà comment rõ ràng.
    Và mình nghĩ là không nên xoá code nếu chưa hỏi người đã viết ra đoạn code đó.
    Mình không thể nhảy vào đâu người khác và nghĩ thay họ rằng đoạn code đó mãi mãi sẽ không được dùng. Có thể họ chỉ vừa commit source lên để có thể tiếp tục công việc vào lúc khác nên phần code của họ chưa hoàn thiện, hoặc đơn giản họ đang comment lại để lấy ý kiến phản hồi của khách hàng về sự thay đổi trước khi sử dụng lại phần code bị comment.
    Mình là newbie, nhưng đó là ý kiến của mình, mong mọi người góp ý.

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s