O antipadrão " Reinventar a roda " é bastante comum - em vez de usar uma solução pronta, escreva a sua do zero. Base de código cresce desnecessariamente, ligeiramente diferentes interfaces que fazem a mesma coisa, mas ligeiramente diferente abundam, se perde tempo para escrever (e depuração!) Funções que estão prontamente disponíveis. Todos nós sabemos disso.
Mas há algo no extremo oposto do espectro. Quando, em vez de escrever sua própria função com duas linhas de código, você importa uma estrutura / API / biblioteca, instancia-a, configura-a, converte o contexto em tipo de dados como aceitável pela estrutura e chama essa única função que faz exatamente o que você precisa, duas linhas de lógica de negócios sob um gigabyte de camadas de abstração. E então você precisa manter a biblioteca atualizada, gerenciar dependências de compilação, manter as licenças sincronizadas e seu código de instanciação é dez vezes mais longo e mais complexo do que se você apenas "reinventasse a roda".
Os motivos podem ser variados: gerenciamento estritamente contrário à "reinvenção da roda", não importa o custo, alguém empurrando sua tecnologia preferida, apesar da sobreposição marginal com os requisitos, um papel cada vez menor de um antigo módulo do sistema, ou expectativa de expansão e expansão mais ampla uso da estrutura, que simplesmente nunca chega, ou apenas entendendo mal o "peso" que algumas instruções de importação / inclusão / carregamento carregam "nos bastidores".
Existe um nome comum para esse tipo de antipadrão?
(Não estou tentando iniciar uma discussão quando está certo ou errado, ou se é um antipadrão real ou qualquer coisa baseada em opiniões , essa é uma pergunta simples e objetiva da nomenclatura.)
Edit: o "duplicado" sugerido fala sobre o próprio código da superengenharia para torná-lo "pronto para tudo", completamente separado dos sistemas externos. Em certos casos, isso pode resultar disso, mas geralmente se origina da "aversão à reinvenção da roda" - reutilização de código a todo custo; se existir uma solução "pronta" para o nosso problema, nós a usaremos, não importando o quanto ela caiba e a que custo. Favorecendo dogmaticamente a criação de novas dependências em detrimento da duplicação de código, com total desconsideração dos custos de integração e manutenção dessas dependências quando comparados ao custo de criação e manutenção do novo código.