Iterator pattern: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Alexbot (discussione | contributi)
m Bot: Aggiungo: zh:迭代器
Nessun oggetto della modifica
Riga 8:
Una [[Classe (informatica)|classe]] contenitrice dovrebbe consentire l'accesso e la navigazione attraverso l'insieme degli elementi che contiene.
 
Nella programmazione a oggetti, un'alternativa semplice e preferibile all'uso di indici (come accade ad esempio per gli [[array]]) consiste nell'aggiungere [[Metodo (programmazione)|operazioni]] all'[[interfaccia]] del contenitore. Questa soluzione ha il grosso vantaggio che, se l'interfaccia è ben definita, consente di annullare la dipendenza da dettagli interni del contenitore, ma ciò presenta alcuni inconvenienti:
# '''Sovraccarico dell'interfaccia del contenitore.''' Le operazioni aggiunte sovraccaricano l'interfaccia preesistente della classe contenitore.
# '''Mancanza di punti di accesso multipli.''' Le operazioni sono centralizzate nella classe contenitore. Questo non consente di effettuare contemporaneamente più visite indipendenti agli elementi dello stesso contenitore.