it-swarm-vi.com

Duy trì mã kế thừa

Tôi có một cơ sở mã cũ vẫn "hoạt động" nhưng khó/gần như không thể duy trì. Nó có thể tốn kém (thời gian và tiền bạc) để cập nhật nó. Tôi chỉ đi cho nó, hay tôi nên tiếp tục ghét thế giới của mình (nhưng tiếp tục làm việc trên một cái gì đó hoạt động và tương đối không có lỗi)?

5
Jason

Nếu bạn thấy một tương lai trong trang web của mình, vui lòng viết lại ngay khi thấy rõ nếu nó không thể duy trì được. Tôi duy trì một số trang web lớn hơn 5 năm tuổi và trong thời gian tôi dành thời gian để nguyền rủa những vấn đề ngu ngốc xuất phát từ đó, tôi có thể viết lại tất cả. Làm cho mình một niềm vui và viết lại nó, sẽ vui hơn khi xây dựng một cái gì đó mới;)

4
D4V360

Tôi chắc chắn rằng nó phụ thuộc vào các trường hợp cụ thể, nhưng hãy chắc chắn tính thêm thời gian bạn phải bỏ ra để duy trì cơ sở mã hiện tại so với chi phí cập nhật. Không biết thêm chi tiết, tôi muốn cập nhật nó thay vì đấu tranh với những gì bạn có.

1
Travis Northcutt

Tôi đang ở trong một tình huống tương tự. Công ty của tôi có trang web di sản của họ làm mọi thứ họ cần. Ngoài ra, họ có một trang web đang được xây dựng bởi một công ty bên ngoài để thay thế nó chiếm 90% những gì họ cần. Họ hy vọng rằng 90% sẽ trở thành 110%.

Tôi đã quyết định về quá trình hành động sau đây:

  • Duy trì trang web cũ cho đến khi trang web mới được phân phối
  • Nhận các tính năng bổ sung được tích hợp vào trang web mới càng nhanh càng tốt
  • Duy trì trang web mới như thể nó không bị thay thế
  • Khi mọi thứ đã hoạt động, hãy xây dựng lại trang web và tạo một kế hoạch di chuyển
  • Di chuyển đến trang web mới và quên rằng một trong những trang cũ đó đã từng tồn tại

Nhiều như tôi chỉ muốn bỏ qua hai trang web kia, đó không phải là một lựa chọn. Bất kể tôi cảm thấy thế nào về nó, trang web đang được phân phối sẽ phải phục vụ chúng tôi trong một số tháng nhất định trước khi tôi thậm chí có thể cố gắng thay thế nó. Tối ưu hóa, duy trì và cải thiện nó sẽ là ưu tiên của tôi. Trang web đó phải thực hiện trong suốt cuộc đời của nó. Vì vậy, xây dựng trang web mới sẽ là một dự án trong suốt thời gian đó là tất cả mọi thứ đang hoạt động và trên cá nhân tôi-thời gian-khi-tôi-muốn-hack-on-một cái gì đó. Nhưng điều đó tốt, vì nó quản lý kỳ vọng của mọi người. Công ty hy vọng trang web mới này sẽ hoạt động ở một mức độ nhất định sẽ có trang web của họ hoạt động ở cấp độ đó, đồng thời tôi sẽ tích cực cải thiện nó ở hậu trường. Và đồng thời một lần nữa, tôi sẽ xây dựng một sự thay thế sẽ thổi bay nó đi.

Trong tình huống của tôi, "trang web mới" của tôi (từ công ty bên ngoài) là cơ sở mã di sản của bạn và "trang web mới" của tôi là bạn nên tôi chỉ cần xây dựng lại. Vì vậy, tôi đoán câu trả lời ngắn gọn của tôi là trong khi duy trì cơ sở mã di sản để giữ cho thế giới xoay chuyển, bạn vẫn có thể xây dựng lại.

0
Bryson

Tôi đồng ý với @ D4V360, thực sự rất vui khi viết một cái gì đó một lần nữa. Ngoài ra, hãy xem xét khái niệm "Nợ kỹ thuật" mà Jeff và Joel đã nói về trong podcast của họ. Dưới đây là một số liên kết thích hợp về chủ đề này:

  • Steve McConnell (tác giả của cuốn sách tuyệt vời "Code Compete") về Nợ kỹ thuật
  • Những điều đã nói ở trên và của chính chúng ta Jeff Atwood về Nợ kỹ thuật
0
Alan