Programtervezési minták
Szerzők:
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Kiadó:
Kiskapu
Kiadás éve:
2004
ISBN:
963 9301 77 9
Oldalak száma:
421
Értékelés:
9
Linkek
A tervezési minták olyan objektumközpontú megoldásokat jelentenek, amelyek már bizonyítottak a gyakorlatban. Ezek felhasználása rugalmasabban módosítható és könnyebben, jobban újrahasznosítható alkalmazásokat készíthetünk. Ez a könyv a téma 4 elismert szerző munkája. Bemutatja, és precízen leírja a mintákat, amelyeket akár magunk is használhatunk.
Bevezetésként a Modell-View-Controller használatáról olvashatunk. Ez jó megoldás arra, hogy az adatmodellt, a nézetet és a vezérlő programot egymástól jól elkülöníthessük, esetleg könnyedén kicserélhessük a három alapvető osztályt valami másra. Egy sokrétű szövegszerkesztő fejlesztése során szertett tapasztalatokat kedvcsinálókét olvashatjuk. Egyetlen példában tucatnyi minta fedezhető fel.
A könyv további részét a különböző típusú minták ismertetése teszi ki. Először is a létrehozási minták következnek. Ezeknek az a céljuk, hogy az egyes objektumpéldányok létrehozásakor speciális igényeknek is eleget tudjunk tenni. Az Egyke minta például lehetővé teszi, hogy egy osztályból csak egyetlen példányt lehessen létrehozni. Az Elvont gyár, Építő és Gyártófüggvény minták szintén a példányosítást támogatják, amikor nem akarjuk vagy nem tudjuk, milyen típusú is legyen az adott példány.
A szerkezeti minták a kapcsolatokba visznek valami fontos plusz szolgáltatást. Az Illesztő mintára akkor van szükség, ha különböző felületű osztályoknak kell kapcsolatba hozni. Így tulajdonképpen a két félnek nem is kell egymásról konkrétan tudni, elég, ha a köztük lévő illeszti mindkét felet. A Híd minta ezzel szemben nem kényszerhelyzet, hanem tudatos tervezés miatt ad valami más felületet. A Homlokzat mintával egy nagyobb komponensnek egységes felületet (interfészt) tudunk nyújtani.
A viselkedési minták között viszonylag ismert a Bejáró, amit sok helyen használhatunk. Láthatjuk, hogyan görgethető vissza egy műveletsorozat a Parancs minta alapján.
Ez az a könyv, amely nemcsak programozóknak, hanem webfejkesztőknek is szól.
■ Bevezetésként a Modell-View-Controller használatáról olvashatunk. Ez jó megoldás arra, hogy az adatmodellt, a nézetet és a vezérlő programot egymástól jól elkülöníthessük, esetleg könnyedén kicserélhessük a három alapvető osztályt valami másra. Egy sokrétű szövegszerkesztő fejlesztése során szertett tapasztalatokat kedvcsinálókét olvashatjuk. Egyetlen példában tucatnyi minta fedezhető fel.
A könyv további részét a különböző típusú minták ismertetése teszi ki. Először is a létrehozási minták következnek. Ezeknek az a céljuk, hogy az egyes objektumpéldányok létrehozásakor speciális igényeknek is eleget tudjunk tenni. Az Egyke minta például lehetővé teszi, hogy egy osztályból csak egyetlen példányt lehessen létrehozni. Az Elvont gyár, Építő és Gyártófüggvény minták szintén a példányosítást támogatják, amikor nem akarjuk vagy nem tudjuk, milyen típusú is legyen az adott példány.
A szerkezeti minták a kapcsolatokba visznek valami fontos plusz szolgáltatást. Az Illesztő mintára akkor van szükség, ha különböző felületű osztályoknak kell kapcsolatba hozni. Így tulajdonképpen a két félnek nem is kell egymásról konkrétan tudni, elég, ha a köztük lévő illeszti mindkét felet. A Híd minta ezzel szemben nem kényszerhelyzet, hanem tudatos tervezés miatt ad valami más felületet. A Homlokzat mintával egy nagyobb komponensnek egységes felületet (interfészt) tudunk nyújtani.
A viselkedési minták között viszonylag ismert a Bejáró, amit sok helyen használhatunk. Láthatjuk, hogyan görgethető vissza egy műveletsorozat a Parancs minta alapján.
Ez az a könyv, amely nemcsak programozóknak, hanem webfejkesztőknek is szól.
Alapmű
Aki manapság objektum-orientált szoftverfejlesztésre adja fejét, márpedig jó eséllyel arra fogja adni, mindenképpen hasznos és fontos!
Tömény mennyiségben, iszonyatos tapasztalat-halmaz a könyv, ezért kicsit nehéz is, de megéri!
Érdemes lenne minden egyes mintáját a gyakorlatban is kivesézni és bemutatni, alkalmazni valamilyen módon vagy formában a megismerés és megtanulás kedvéért!
Az a legfontosabb szerintem, hogy rávilágít arra, hogy mi is az a szoftvertervezés, amiről gyakran nem beszélünk. Enélkül igazán jó programot igazán nehéz írni... vagy csak nagyon kevesek tudják ezt megtenni.
Azt gondolom, kifejezetten webes tervezési minták nincsennek benne, de ennek dacára egyetértek a könyvajánló irójának utolsó mondatával is! :)
veszek
Kiadó?
Kiskapu
Elvont gyár, Építő, Gyártófüggvény, Illesztő...
Régebben mintha használhatóbbak lettek volna a szakkönyvek fordításai...
Borzalmas :)
Mellesleg írtam egy negatív hangvételű kritikát tisztességes hangnemben a könyv Kiskapu-s oldalán és természetesen nem rakták ki :) Megértem hogy üzletileg rossz fényt vetne rájuk, de akkor most kíváncsiak a véleményünkre vagy nem? :)
Mit akarsz?
No látod
Egyszerűen azt kell itt megérteni, hogy az elnevezések azért vannak, hogy a közös fogalomtárban ugyanazt a fogalmat címezzék meg. Ha most valami szájhős elkezd itt egykézni, akkor b*romira nem fogjuk érteni és már az is 600 post lesz hogy kiderítsük hogy ő bizony a singleton-ról beszél.
Nem értem miért élvezi(k) valaki(k), hogy bevált _elnevezéseket_ új elnevezésre cseréljék. Mit nyerünk vele? Semmit. Aki nem tud ebben a szakmában angolul az halálra van ítélve, tehát lefordítani a közérthetőség miatt felesleges. Cserébe aki singleton-nak ismeri (jelezném, a közösség 99.9999%-a) azt jól megkavarják és mostmár nem egy hanem két, három, tíz, húsz elnevezést kell észben tartson egy ugyanazon fogalomra.
Nem is tudom mit járatom itt a számat. Megmondta a magyartanárom is még gimiben, hogy a magyar nyelv és emberek a világ legredundánsabb elemei.
nem érdemes
Latin
Terminológiahonosítás témájában jó szem előtt tartani, hogy a
A terminológiafordítás nagyon nehéz ügy, nagyon nagyfokú konszenzus kell hozzá, és az ritka. Egyszerűen nem bírja a nyelv a tempót, holnap új paradigmák jelennek meg a programozásban; a nyelv nem ilyen gyors. Ilyen specifikus területen, mint a programozás, nem is szokás a fordítást erőltetni, ahogy mondtad, az orvostudomány nyelve a latin, ezé az angol (egyébként a gyógytechnológia fejlődésével eléggé kezd beszivárogni az angol az orvosi jelentések nyelvébe is – pacemaker stb.)
Illetve itt is érvényesülnek a piaci erőviszonyok, az IT-terminológia fordításának irányát ma lényegében a Microsoft szabja meg. A fordítók a (letölthető) MS-terminológiát tekintik referenciának. Jó példa a fájl, hiába hívtak össze tanácskozásokat a kiadók és erőltették az összes könyvben és folyóiratban az állományt, a microsoft szűrőjén nem ment át. Más szavakkal is volt így. Megjegyzem, az MS-terminológia nagyon jó minőségű.
Szerk.
Még annyit, hogy alapvetően kétféle fordítás van, a nem kreatív és a kreatív. Az előbbi esetében nem szokott gond lenni, az MS-terminológia 99%-a ilyen. Vagy ilyen a "programtervezési minta" is. Ezek a Gyártó meg tsai viszont kreatívak, és így ötletszerűen odavetve nem is működnek, csak gátolnak.
MS és fordítás
A Programtervezési minták == Design Patterns egyébként szerintem is kiváló fordítás, teljesen visszaadja hogy miről is van szó. Talán még korrektebb mint az angol, mert a belsőépítész ismerősöm tuti másra gondolna a hallatán, mint én :)
zárlat == closure
jó ez
Anno az MTA is azért jött
a vita
Fontos a fordításról beszélni, csak a módi... Akinek nem inge az ne vegye magára, mert rosszul áll neki.
Én biztos nem fogok angolul megtanulni, de érdekel a számítástechnika néhány ága. Mindig érdeklődéssel várom, ha megosztanak angolul nem tudó embertársaikkal olyan információt azok, akik tudnak ezen a nyelven. Azt gondolom, hogy a tanultabb embereknek ez is a feladata, amíg másként nem fordul a sors kereke.
Még akkor is örülök minden jó fordításnak, ha az a véleményem a tudományról, hogy egy válasz a sok közül a világ működésére. Szerencsére nem nekem kell eldöntenem, hogy igaz, vagy hamis ez a válasz. Talán nem értitek ezt félre. - Csicseri
a vita
Fontos a fordításról beszélni, csak a módi... Akinek nem inge az ne vegye magára, mert rosszul áll neki.
Én biztos nem fogok angolul megtanulni, de érdekel a számítástechnika néhány ága. Mindig érdeklődéssel várom, ha megosztanak angolul nem tudó embertársaikkal olyan információt azok, akik tudnak ezen a nyelven. Azt gondolom, hogy a tanultabb embereknek ez is a feladata, amíg másként nem fordul a sors kereke.
Még akkor is örülök minden jó fordításnak, ha az a véleményem a tudományról, hogy egy válasz a sok közül a világ működésére. Szerencsére nem nekem kell eldöntenem, hogy igaz, vagy hamis ez a válasz. Talán nem értitek ezt félre. - Csicseri