Iterator pattern: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m →Struttura: Bot: Fix dimensionamento immagini (v. richiesta) |
m Bot: fix wl, replaced: Design Patterns patterns → Design pattern |
||
(12 versioni intermedie di 8 utenti non mostrate) | |||
Riga 1:
{{U|Iteratore|Informatica|Febbraio 2020}}
Nel contesto della [[programmazione orientata agli oggetti]], il termine '''''Iterator''''' (reso in italiano con "'''
L'''Iterator'' risolve diversi problemi connessi all'accesso e alla navigazione attraverso gli elementi, in particolare, di una [[struttura dati]] contenitrice, senza esporre i dettagli dell'[[implementare|implementazione]] e della struttura interna del contenitore.
L'[[oggetto (informatica)|oggetto]] principale su cui si basa questo ''design pattern'' è l'[[iteratore]].
Line 5 ⟶ 6:
== Motivazioni ==
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 (informatica)|interfaccia]] del contenitore. Questa soluzione ha il
Il ''design pattern'' ''Iterator'', quindi, supera le soluzioni che si possono ottenere con la pura programmazione ad oggetti mediante codice più complesso.
Line 32 ⟶ 33:
== Partecipanti ==
== Benefici e conseguenze ==
Line 61 ⟶ 62:
* [[Design pattern]]
* [[Visitor]]
* [[Iteratore
* Quando la classe contenitore possiede [[struttura dati ricorsiva|struttura ricorsiva]], è possibile utilizzare il ''pattern [[Composite]]'' per definire una classe contenitore concreta.
* Il ''pattern'' ''[[Factory method]]'' è spesso applicato per virtualizzare la creazione di oggetti iteratore da parte delle classi contenitore.
== Altri progetti ==
{{interprogetto|commons=Category:Iterator pattern|preposizione=sull'}}
== Collegamenti esterni ==
*
{{Design
[[Categoria:
|