Kihagyás

Viselkedési minták

Az előadás videója elérhető itt.

A viselkedési minták elsősorban algoritmusokkal, illetve az osztályok és objektumok közötti kommunikációval, a felelősségi körök kijelölésével foglalkoznak. Az osztály viselkedési minták általában öröklődéssel valósulnak meg, míg az objektum viselkedési mintáknál egyenrangú objektumok kommunikálnak anélkül, hogy mindegyik ismerje mindegyiket.

Iterator

Az Iterator tervezési mintánál a cél egy adott tároló elemeinek a sorozatos elérése a reprezentációtól függetlenül.

A motiváció annyi, hogy a tároló (aggregátor) objektum (pl. lista) elemeinek elérése úgy valósuljon meg, hogy ne kelljen a bejárónak ismernie a tároló belső szerkezetét. A kliens független a tároló típusától ugyanúgy tudja így a tároló elemeit tetszőleges esetben bejárni. Akkor kell tehát alkalmazni, ha különböző tárolók kezeléséhez szeretnénk egységes interfészt biztosítani.

A java.util.Iterator meg is valósítja ezt a mintát.

iterator Az Iterator interfészt definiál a tárolt elemek elérésére és bejárására. A ConcreteIterator lesz az, amely adott tároló típusra implementálja az Iterator interfészt és nyilvántartja az aktuális bejárási pozíciót. Az Aggregate interfészt definiál az Iterator objektum létrehozására. Ezt, illetve az Iterator interfészt ismeri csak a kliens. A ConcreteAggregate (ami maga a tároló) implementálja az iterátor létrehozásának interfészét és visszaadja a konkrét iterátort.


Utolsó frissítés: 2021-05-04 07:53:32