Tôi, tôi và tôi, vừa là nhà sản xuất vừa là người duy trì mã kế thừa. Nếu công cụ của bạn tạo ra "hàng ngàn vi phạm" (hoặc thậm chí hàng trăm cho vấn đề đó), hãy quên công cụ đó, nó không thể áp dụng được cho tình huống ...
Tôi cho rằng các nhà phát triển ban đầu đã qua lâu và không có sẵn để thảo luận. Vì vậy, không có ai xung quanh hiểu được lý do tại sao và do đâu đó về phong cách thiết kế và mã hóa. Sửa chữa hàng trăm hoặc hàng ngàn vi phạm sẽ không phải là vấn đề viết lại một vài dòng mã ở đây và đó. Thay vào đó, nó chắc chắn đòi hỏi tái cấu trúc / tái phân rã chức năng. Bạn thử làm điều đó với bất kỳ cơ sở mã lớn hiện có nào mà không hiểu rõ về thiết kế hiện tại của nó và bạn buộc phải giới thiệu một loạt lỗi / vấn đề / v.v. Chỉ là một con giun mới thậm chí còn tệ hơn cái bạn đang có (hoặc tệ hơn công cụ của bạn >> nghĩ rằng << bây giờ bạn có).
Cách tiếp cận hợp lý duy nhất để giải quyết "hàng ngàn vi phạm" sẽ được viết lại từ đầu. Một nỗ lực lâu dài và tốn kém, và gần như không thể bán cho ban quản lý. Và trong trường hợp này có lẽ họ đúng ...
Mã kế thừa thường chỉ yêu cầu chỉnh sửa. Giống như cho y2k, hoặc khi cổ phiếu tăng từ 256 đến thập phân. Tôi đã tải vô số cr * p. Và rất nhiều thứ tương tự khác. Nó thường khá "chính xác" ở chỗ bạn có thể "đọc qua" phong cách đôi khi xấu, phân rã chức năng xấu, xấu, v.v. và xác định vị trí bộ sưu tập các địa điểm cần sửa đổi. Và sau đó, những gì xảy ra "giữa những nơi đó", tức là dòng chảy cấp cao hơn, có thể vẫn là một bí ẩn đối với bạn. Chỉ cần đảm bảo rằng bạn hiểu chức năng địa phương hóa mà bạn đang thay đổi, sau đó kiểm tra, thử nghiệm, kiểm tra xem có tác dụng phụ nào không, v.v., kiến thức bản địa hóa của bạn sẽ không thể lường trước được.
Nếu bạn không thể xem theo cách của mình thông qua mã như vậy, thì bạn có thể không phải là người tốt nhất để duy trì mã kế thừa. Một số người có thể bắt đầu với một màn hình trống và viết các chương trình đẹp, nhưng không thể bắt đầu với một cơ sở mã lớn của mã người khác và duy trì nó. Những người khác có thể duy trì mã, nhưng không thể bắt đầu từ đầu. Một số có thể làm cả hai. Hãy chắc chắn rằng đúng người đang duy trì mã di sản của bạn.
Đôi khi bạn có thể muốn thiết kế lại và viết lại cơ sở mã di sản của mình từ đầu là khi các yêu cầu của doanh nghiệp (hoặc khác) thay đổi đến mức "chỉnh sửa" chỗ ngồi không thể đáp ứng các yêu cầu đã thay đổi nữa . Và tại thời điểm đó, bạn cũng có thể bắt đầu bằng cách viết một tài liệu yêu cầu chức năng mới ngay từ đầu, đảm bảo tất cả các bên liên quan đều ở trên tàu. Về cơ bản, đây là một trò chơi bóng hoàn toàn mới.
Điều sai lầm một và duy nhất >> điều cần làm là thử xử lý bảo trì mã kế thừa giống như cách bạn đi về sự phát triển mới. Và đó là một điều sai lầm dường như chính xác là con đường bạn muốn đi :) Hãy tin tôi đi, đó không phải là điều bạn muốn làm.