Critérios para selecionar uma biblioteca para uso corporativo
-
21-09-2019 - |
Pergunta
Quais são seus critérios para a seleção A (de código aberto) (ou estrutura) para uso corporativo?
Algumas bibliotecas são bem pequenas e podem ser facilmente verificadas quanto a falhas de segurança ou testadas quanto ao desempenho. Mas a maioria das bibliotecas é grande demais para ser revisada antes que você possa começar a usá -las.
Quando penso em eu selecionar uma biblioteca, a maioria se o processo de seleção é apenas um sentimento. Quando tento ser mais específico, esses são os primeiros critérios que me virão:
- Quantos desenvolvedores estão trabalhando no projeto? Meu sentimento é que mais desenvolvedores encontrarão mais bugs e problemas de segurança. Além disso, será mais difícil introduzir problemas de segurança intencionalmente.
- Quão bom é o suporte? Comparado às bibliotecas de código fechado, tenho a sensação de que o apoio do código aberto geralmente é muito melhor, pois você tem uma comunidade em todo o mundo que estará disponível sempre que precisar.
- Qual é a largura da biblioteca? Existem livros sobre isso no mercado? Quais outros projetos estão usando a biblioteca?
Quais são seus critérios? Sinta -se à vontade para editar esta nota como Wiki da comunidade.
Solução
Para mim, depende se é ou não pago ou não. No seu caso, você dá a impressão de que está olhando para as bibliotecas de código aberto.
Nesse caso específico, examinarei a cobertura do teste. Independentemente do número de colaboradores, se não houver testes de unidade que eu possa me executar (além de aprimorar e testar meus casos de uso se eles ficarem fora da cobertura dos testes de unidade fornecidos), esse é um problema maciço para Eu.
Não é que eu não aprecie o trabalho que já é feito no fornecimento da biblioteca, mas o código em projetos como esse já deve ter testes de unidade com boa cobertura para ganhar força.
Se não houver bibliotecas que tenham testes de unidade, eu começaria a procurar a biblioteca nos mecanismos de pesquisa, buscando ativamente respostas negativas. Pessoas que têm sentimentos negativos sobre o código e podem cristalizar a base objetiva para esses sentimentos em termos de como o código falhou que eles fornecerão feedback mais valioso do que as massas que dizem "funciona muito bem".
Agora, para um código comercial, é completamente diferente. Nesse ponto, eu começaria a olhar para a empresa e sua equipe de suporte como um todo, e usando isso como uma determinação (bem como testes próprios para ver se a biblioteca é adequada para você) sobre se você Use a oferta dessa empresa.
Outras dicas
Muitas vezes, em bibliotecas de código aberto, você não pode obter suporte confiável. Nessas situações, sua melhor aposta é corrigi -la, que envolve os seguintes requisitos.
- Você precisa ter a capacidade de ler o código muitas vezes confuso e sem documentos.
- A capacidade técnica de fazer as perguntas certas das pessoas certas - ou seja, essas pessoas não estão sendo pagas para resolver problemas e elas só responderem se você facilitar o suficiente para elas.
- Então você precisa da capacidade de corrigir o bug e aceitar o patch - porque se o patch não for aceito .....
Com isso em mente, eu estaria inclinado a obter uma biblioteca comercial ou biblioteca licenciada dupla para que eu pudesse pagar para obter um engenheiro competente (motivado pelo dinheiro que pago a empresa dele) para resolver meu problema.