Vedo un sacco di API che utilizzano raccolte personalizzate invece di usare solo generici pacchettizzati strongmente tipizzati.
Ad esempio, l'API avrà un Object1Collection
anziché solo un List<Object1>
(o qualunque sia il generico appropriato).
Quando sai usare l'una o l'altra? Capisco che creerai una raccolta personalizzata se desideri estendere le funzionalità di una raccolta generica pre-spedita, ma cosa succede se non è questo il caso?
È prudente creare la raccolta personalizzata dall'inizio, pensando che in futuro quell'oggetto potrebbe aumentare e richiedere ulteriori capacità e potrebbe essere più semplice farlo inizialmente? Questa giustificazione è sufficiente?
E se vuoi solo estendere funzionalità, invece di definire funzionalità di raccolta, devi semplicemente ricavare la tua collezione personalizzata da una classe di raccolta generica di base, altrimenti eredita l'interfaccia di conseguenza? È tipico?