" 바퀴를 재창조 "하는 반 패턴은 매우 일반적인 것입니다. 준비된 솔루션을 사용하는 대신 처음부터 직접 작성하십시오. 코드베이스는 불필요하게 성장하지만 약간 다른 인터페이스는 동일하지만 약간 다른 방식으로 커지 므로 쉽게 사용할 수있는 함수를 작성 (및 디버그!)하는 데 시간이 낭비됩니다. 우리는 모두 이것을 알고 있습니다.
그러나 스펙트럼의 반대쪽 끝에 무언가가 있습니다. 두 줄의 코드 인 자체 함수를 작성하는 대신 프레임 워크 / API / 라이브러리를 가져 와서 인스턴스화하고, 구성하고, 프레임 워크에서 허용하는대로 컨텍스트를 데이터 유형으로 변환 한 다음, 필요한 것을 정확히 수행하는 단일 함수를 호출하십시오. 기가 바이트의 추상화 계층에서 두 줄의 비즈니스 로직. 그런 다음 라이브러리를 최신 상태로 유지하고, 빌드 종속성을 관리하고, 라이센스를 동기화 상태로 유지해야하며, 인스턴스화 코드는 "바퀴를 재발 명"하는 것보다 10 배 길고 복잡합니다.
그 이유는 다양 할 수 있습니다. 비용과 상관없이 경영진은 "바퀴의 재창조"를 엄격히 반대하고, 요구 사항과의 겹치는 부분에도 불구하고 선호하는 기술을 추진하는 사람, 이전에 주요 시스템 모듈의 감소 역할, 확장 및 더 넓은 기대 도착하지 않은 프레임 워크를 사용하거나, 몇 가지 가져 오기 / 포함 /로드 명령이 "비하인드"를 수행하는 "무게"를 오해합니다.
이런 종류의 반 패턴에 대한 일반적인 이름이 있습니까?
(나는 그것이 옳고 그름 일 때 토론을 시작하려고하지 않거나 그것이 실제 반 패턴이나 의견에 근거한 것이라면 이것은 간단하고 객관적인 명명법 질문입니다.)
편집 : 제안 된 "중복"은 외부 시스템과 완전히 분리되어 "모든 것을 준비"할 수 있도록 자체 코드를 오버 엔지니어링하는 것에 대해 이야기합니다. 어떤 경우에는이 문제가 생길 수 있지만 일반적으로 "바퀴 재개발에 대한 혐오"에서 비롯됩니다. 코드 재사용은 모든 비용으로 발생합니다. 우리의 문제에 대한 "준비된"솔루션이 존재한다면, 우리 는 그것이 얼마나 잘 맞지 않고 어떤 비용이들든지 상관없이 그것을 사용할 것입니다. 새로운 코드의 생성 및 유지 비용과 비교할 때 이러한 종속성의 통합 및 유지 관리 비용을 완전히 무시하면서 코드 복제에 비해 새로운 종속성 생성을 독단적으로 선호합니다.