Per classi e funzioni, è chiaro: ognuno dovrebbe fare solo una cosa.
Per le biblioteche però, questo è meno chiaro. Se hai una biblioteca con collezioni, potrebbe avere più raccolte. Potrebbe avere funzioni utili come l'ordinamento, che non sono strettamente basate sulla raccolta ma gli utenti si aspetterebbero. Ognuno di questi risultati in una libreria "più ampia".
Dall'altro lato c'è una libreria per il tipo specifico di raccolta e / o con poche funzionalità integrate. Se vuoi una coda, ti dà una coda. Se vuoi ordinare quell'elenco, la libreria ti consente di farlo da solo.
Qual è la migliore pratica qui (se presente)? Riesco a vedere gli argomenti per ogni lato.