La decisione di utilizzare una libreria di terze parti non deve essere presa alla leggera. La decisione di scrivere qualcosa da solo, d'altra parte, dipende dalla quantità di lavoro necessaria per implementarla.
Come hai notato correttamente, le librerie di terze parti spesso dipendono da altre librerie. Ciò potrebbe significare che la libreria A dipende da B v1.0 + C v1.2, e la libreria D dipende da C v1.1 e potresti non essere necessariamente in grado di avere C v1.1 e C v1.2 collegati allo stesso tempo , efficacemente, A e D sono incompatibili.
Se utilizzi una libreria di terze parti, tieni presente i wrapper: Utilizzo di librerie di terze parti: utilizza sempre un wrapper?
Considera anche questi:
-
Problemi di sicurezza : le librerie di terze parti potrebbero avere noti problemi di sicurezza.
-
Tempo per imparare : a volte la cosa più difficile può imparare a utilizzare l'interfaccia, non a implementarla, il che significa che puoi anche scrivere tutto da solo
-
Sostituibilità : dovresti avere una strategia per sostituire una libreria di terze parti con un'altra libreria di terze parti o scrivere la funzionalità da solo
-
Problemi di licenza : se scrivi da solo, hai il copyright e non devi preoccuparti delle licenze e delle loro condizioni.
-
Tempo di avvio : il caricamento di una libreria casalinga semplice è più veloce del caricamento di una gigantesca libreria esterna gigantesca
-
Impronta di memoria : come per il tempo di avvio, le grandi librerie esterne consumano più memoria.
-
Rischio di bug : più grande è la libreria esterna, più è probabile che abbia dei bug.
-
Stabilità della versione : alcune librerie di terze parti non dispongono di un'interfaccia stabile, il che significa che l'aggiornamento della libreria interrompe tutto.
Vorrei basarmi su questi suggerimenti per valutare attentamente se si desidera utilizzare una libreria di terze parti o meno. Per un mio progetto, un'applicazione scientifica, ho deciso di utilizzare solo una libreria di grafici a linee e di implementare tutto il resto da solo. In realtà ho anche scritto la mia propria libreria di grafici a linee, ma non mi sono preoccupato di perfezionarla per ottenere grafici quanto più belli possibili, motivo per cui alla fine ho usato una libreria esistente.