Tervezési minta

A Wikipédiából, a szabad enciklopédiából

A tervezési minta a tervezési probléma megoldásának újrafelhasználható formája. Az ötletet Christopher Alexander építész vezette be,[1] és számos más tudományághoz, nevezetesen a szoftverfejlesztéshez is adaptálták.[2]

Részletek[szerkesztés]

Azon szervezett minták gyűjteménye, amelyek kapcsolódnak egy adott területen, az úgynevezett mintanyelv. Ez a nyelv közös terminológiát ad a tervezők által tapasztalt helyzetek megoldására.

„Ennek a nyelvnek az elemeit mintáknak nevezik. Mindegyik minta leír egy olyan problémát, amely újra és újra felmerül a környezetünkben, majd leírja a probléma megoldásának lényegét oly módon, hogy ezt a megoldást egymilliószor is felhasználhatja anélkül, hogy soha nem tenné kétszer ugyanazt.”

Christopher Alexander

A minta dokumentálásához el kell magyarázni, hogy egy adott helyzet miért okoz problémát, és hogy a minta alkotóelemei hogyan kapcsolódnak egymáshoz a megoldás érdekében.[3] Christopher Alexander azt írja le, hogy a közös tervezési problémák "ellentmondásos erőkből" származnak - például az a konfliktus, amely szerint a szoba napfényes legyen, és ne melegedjen túl a nyári délutánokon. A minta nem mondja meg a tervezőnek, hogy hány ablakot kell a szobába helyezni; ehelyett egy olyan értékkészletet javasol, amely a tervezőt egy adott alkalmazáshoz legmegfelelőbb döntés irányába vezeti. Például Alexander azt javasolja, hogy elegendő ablakot kell beépíteni, hogy a fény megvilágítsa a helyiséget. Ezt jó megoldásnak tekinti, mivel úgy gondolja, hogy ez növeli az élvezeti értékét az ott tartózkodók számára. Más szerzők eltérő következtetésekre juthatnak, ha nagyobb értéket tulajdonítanak a fűtési költségeknek vagy az anyagköltségeknek. Ezeket az értékeket, amelyeket a mintázat szerzője használ a "legjobb" megoldás meghatározására, a mintán belül is dokumentálni kell.

A mintadokumentációnak meg kell magyaráznia azt is, mikor alkalmazható. Mivel két ház nagyon különbözhet egymástól, a házak tervezési mintájának elég széleskörűnek kell lennie, hogy mindkettőre alkalmazható legyen, de nem olyan homályosnak, hogy ne segítse a tervezőt a döntések meghozatalában. Azokat a helyzeteket, amelyekben a minta felhasználható, a minta kontextusának nevezzük. Néhány példa lehet: "minden ház", "minden kétszintes ház" vagy "minden olyan hely, ahol az emberek időt töltenek".

Például Christopher Alexander munkájában a buszmegállók és a műtéti központok várótermei egyaránt az "EGY HELY A VÁRAKOZÁSRA" minta kontextusában vannak.

Példák[szerkesztés]

  • Szoftvertervezési minta a szoftvertervezésben
  • Építészeti minta a szoftver architektúrájához
  • Interakciós tervezési minta, amelyet az interakció tervezésében / az ember-számítógép interakcióban használnak
  • Pedagógiai minták a tanításban
  • Mintakertészet, a kertészetben

Jegyzetek[szerkesztés]

  1. Alexander, Christopher. A Pattern Language: Towns, Buildings, Construction. Oxford University Press (1977). ISBN 0-19-501919-9 
  2. Gamma, Erich. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1994). ISBN 0-201-63361-2 
  3. James Maioriello: What Are Design Patterns and Do I Need Them?, 2002. október 2. (Hozzáférés: 2011. március 21.)

További irodalom[szerkesztés]

Fordítás[szerkesztés]

Ez a szócikk részben vagy egészben a Design pattern című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Kapcsolódó szócikk[szerkesztés]