Antipotype " Tái tạo bánh xe " là một mô hình khá phổ biến - thay vì sử dụng một giải pháp sẵn sàng, hãy tự viết lại từ đầu. Cơ sở mã phát triển không cần thiết, các giao diện hơi khác nhau làm cùng một việc nhưng hơi khác nhau, thời gian bị lãng phí để viết các hàm (và gỡ lỗi!) Có sẵn. Chúng ta đều biết điều này.
Nhưng có một cái gì đó ở phía đối diện của quang phổ. Khi thay vì viết hàm riêng của bạn đó là hai dòng mã, bạn nhập khung / API / thư viện, khởi tạo nó, định cấu hình, chuyển đổi ngữ cảnh thành kiểu dữ liệu mà khung công tác chấp nhận, sau đó gọi một hàm duy nhất thực hiện chính xác những gì bạn cần, hai dòng logic kinh doanh dưới một gigabyte của các lớp trừu tượng. Và sau đó, bạn cần cập nhật thư viện, quản lý các phụ thuộc xây dựng, giữ đồng bộ giấy phép và mã khởi tạo của nó dài hơn mười lần và phức tạp hơn so với khi bạn chỉ "phát minh lại bánh xe".
Lý do có thể khác nhau: quản lý hoàn toàn phản đối "phát minh lại bánh xe" bất kể chi phí là gì, một người nào đó thúc đẩy công nghệ ưa thích của họ mặc dù có sự chồng chéo với các yêu cầu, vai trò của một mô-đun chính trước đây của hệ thống, hoặc kỳ vọng mở rộng và rộng hơn việc sử dụng khung mà không bao giờ đến hoặc chỉ hiểu sai "trọng lượng" một vài hướng dẫn nhập / bao gồm / tải mang "phía sau hậu trường".
Có một tên chung cho loại phản hạt này không?
(Tôi không cố bắt đầu một cuộc thảo luận khi nó đúng hay sai, hoặc nếu đó là một phản mẫu thực sự hay bất cứ ý kiến nào , đây là một câu hỏi danh pháp đơn giản và khách quan.)
Chỉnh sửa: các đề xuất "trùng lặp" được đề xuất về việc áp đảo mã riêng để làm cho nó "sẵn sàng cho mọi thứ", hoàn toàn tách biệt với các hệ thống bên ngoài. Điều này có thể trong một số trường hợp bắt nguồn từ nó, nhưng nói chung nó bắt nguồn từ "ác cảm với việc phát minh lại bánh xe" - tái sử dụng mã bằng mọi giá; nếu một giải pháp "làm sẵn" cho vấn đề của chúng tôi tồn tại, chúng tôi sẽ sử dụng nó, bất kể nó phù hợp đến mức nào và với chi phí nào. Giáo điều ủng hộ việc tạo ra các phụ thuộc mới so với sao chép mã, với tổng chi phí cho việc tích hợp và bảo trì các phụ thuộc này khi so sánh với chi phí tạo và bảo trì mã mới.