ugrás a tartalomhoz

Programtervezési minták

Nagy Gusztáv · 2005. Jan. 14. (P), 12.39

Szerzők:

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

Kiadó:

Kiskapu

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.
 
1

Alapmű

Anonymous · 2006. Már. 20. (H), 20.27
És szerintem ez az a könyv, amelynek alapműnek kellene lenni a programozó, programtervező és hasonló szakoknál!

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! :)
2

veszek

Sweetchack · 2006. Jún. 7. (Sze), 15.48
Ha van valakinek egy eladó példánya akkor én megvételezném.
3

Kiadó?

Nagy Gusztáv · 2006. Szep. 1. (P), 07.56
Próbálkoztál már náluk?
Kiskapu
4

Elvont gyár, Építő, Gyártófüggvény, Illesztő...

Anonymous · 2006. Okt. 8. (V), 00.41
A magyar fordítás ilyen durva? Miért jobb az egyke, mint a singleton?
Régebben mintha használhatóbbak lettek volna a szakkönyvek fordításai...
5

Borzalmas :)

tolmi · 2008. Okt. 26. (V), 10.38
Elképesztő, rendesen rommá röhögtem rajta magam. Inkább berendeltem Amazonról, minthogy ezt a szörnyszülöttet kézben tartsam.

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? :)
6

Mit akarsz?

Joó Ádám · 2008. Okt. 27. (H), 01.18
Komolyan nem értem. Most szingöltonoknak meg fektoriknak kéne visszaköszönniük a lapokról? Az jó lenne? Ha nem, akkor hogy kellene ezeket fordítani? Az angolnak miért jó az egyke és a gyár?
7

No látod

tolmi · 2008. Okt. 27. (H), 10.05
Pont ez a gond. A singleton az singleton, _nem_ egyke. Az egykéről nem tudom hogy az mi, vaszínüleg a szomszéd szingli csaj, a singleton az egy ismert DP. Ne fordítsuk már le ezeket, vagy ha igen, akkor előtte tartsunk már egy 5 éves fórumot, hogy megfelelő fordítást találjunk ki rájuk és legyen idő végigvezetni ezt a szakmában.

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.
8

nem érdemes

Hodicska Gergely · 2008. Okt. 27. (H), 15.31
Ceriak ebben a tekintetben totál elvakult. :)
9

Latin

Ustak · 2008. Okt. 27. (H), 20.56
Egyetértek véled, még ha mások nem is értenek egyet vélünk :-) A kertészet nyelve a latin, mint ahogy az orvostudományé is. Miért nehéz elfogadni hogy az infóé meg az angol? Néha nehéz megfogni és lefordítani (legalábbis nekem) magyarul egy olyat mint a javascriptben a closure (Zárlat, zárvány, zárás) viszont angolul annyira helyén van. Vagy a CSS (Cascading Style Sheet) sem nagyon látom úgy hogy (Aláhulló? Zuhanó? Vízeső??? :-) Stílus Lapok :-)) Pedig a CSS használatánál jó ha tisztába vagyunk hogy mi az a Cascade (Hullás, Zuhanás, Esés?). Szóval szerintem az angol szó mögött rejlő jelentésnek fogalomnak tisztázása a fontos és nem a magyarosítása. Szerintem ez a szépirodalommal is így van, nagyon élvezetes magyarul, de új élmény angolul.
10

Terminológiahonosítás témájában jó szem előtt tartani, hogy a

Fraki · 2008. Okt. 28. (K), 00.53
Terminológiahonosítás témájában jó szem előtt tartani, hogy a magyar és az idegennyelvi változat összehasonlítása, méricskélése képtelen feladat. Valószínűleg egy angol anyanyelvi beszélőnek a saját köznyelvi készletéből képzett terminológia itt-ott ugyanolyan kreáltnak hat (merthogy az is), mint nekünk a magyar fordítás, bár ez nem annyira zavaró nekik, hiszen az az elsődleges terminus, ellentétben nálunk, ahol a magyar kreálmány valami helyett van. És ez a lényeg, az elsődlegesség, egy szaknyelvi terminus per definitionem olyan állatfaj, aminek lehetőleg ne legyen konkurenciája.

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.
12

MS és fordítás

tolmi · 2008. Okt. 28. (K), 11.33
Ez ügyben le a kalappal (egyébként más ügyekben is) a magyar MS előtt, mert kimagasló minőségű munkát végeznek a Microsoft termékek honosítását tekintve, megtalálva az egyensúlyt a szakkifejezések eredetije és a magyar nyelv között. Néha nehéz meghozni egy-egy ilyen döntést, de azért pár éve már megtörténik ez minden alkalommal és használható anyagot profitál ebből a közösség is.

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 :)
11

zárlat == closure

tolmi · 2008. Okt. 28. (K), 11.29
...na ezen szétestem :) Szavazzuk meg! Építsük bele ezt a terminus technicus-t a magyar nyelvbe! Már úgyis mindegy mindennek. :)-t namespace separatornak!
13

jó ez

opsz · 2010. Szep. 23. (Cs), 23.56
Én nem érzek semmi problémát a fordítással. Mi egyetemen (ELTE-n) igy magyaraul (+angolul) tanultuk régen. Tudja mindenki mi az egyke/singleton, sablon/template vagy bejáró/iterator, nem kell ebből problémát csinálni.... Ezek ráadásul fontos kifejezések, amit nap mint nap használsz így érdemes volt lefordítani őket, és én inkább magyarul használom őket. Persze lehet angolul is olvasni, de szerintem ez egy kifejezetten jó könyv, jól érthető, tele segítő uml ábrával, ha jól tudom az eredetiben még az sincs. Én is nagypályázhatnék hogy nem azt mondom hogy függvény mert az magyar hanem azt hogy function, de hülyének néznének :) (persze jogosan :)
14

Anno az MTA is azért jött

inf3rno · 2010. Okt. 16. (Szo), 18.41
Anno az MTA is azért jött létre, hogy a tudományokat lehessen magyar nyelven tanulni, és a nyelvújítás is részben ezért volt az 1800-as években. Szerintem ha nem fordítanak le szaknyelveket egy adott ország nyelvére, az az elmaradottság, és a lassú asszimiláció jele.
15

a vita

Csicseri · 2011. Ápr. 6. (Sze), 01.09
Sziasztok! - Ez elég nevettséges volt, amit itt csináltatok. Olyan kisgyerekes.
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
16

a vita

Csicseri · 2011. Ápr. 6. (Sze), 01.10
Sziasztok! - Ez elég nevettséges volt, amit itt csináltatok. Olyan kisgyerekes.
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