Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
nDozapamiętania”zwracauwagęnakonsekwencjeiryzyka,jakie
niesiezesobąwykorzystaniewzorca.
•Jeślichcielibyściecośzrozumieć,potrzebujeciekonkretnychprzy-
kładów-takjakczęstodziejesiętozemną-podrozdziałnPrzy-
kładowykod”jestdlanas.Przeprowadzaonkrokpokrokuprzez
pełnąimplementacjęwzorca,takbyśmymoglidokładniezobaczyć,
wjakisposóbondziała.
•Wzorceróżniąsięodpojedynczychalgorytmów,ponieważmają
charakterotwarty.Zakażdymrazem,gdykorzystamyzwzorca,
prawdopodobniezaimplementujemygoinaczej.Kolejnypod-
rozdział,nDecyzjeprojektowe”,zgłębiatenobszaripokazuje
różnemożliwości,którepowinniśmywziąćpoduwagę,stosując
wzorzec.
•KrótkipodrozdziałnPatrzrównież”służypodsumowaniuorazpo-
kazuje,wjakisposóbdanywzorzecwiążesięzinnymi,atakże
wskazujerzeczywisteprzykładykoduopensource,wktórymsąone
wykorzystywane.
Kilkasłówoprzykładowymkodzie
PrzykładowykodwtejksiążcejestnapisanywC++,nienależy
jednakztegownosić,żewzorceteznajdujązastosowaniejedynie
wtymjęzyku,aniżejęzykC++nadajesiędotegolepiejodin-
nych.Prawiekażdyjęzykdobrzesięsprawdzi,choćniektórewzorce
wydająsięzakładać,żejęzyk,którymsięposługujemy,uwzględnia
obiektyiklasy.
WybrałemC++zkilkupowodów.Popierwsze,jesttonajpopular-
niejszyjęzyktworzeniakomercyjnychgier.Touniwersalnyjęzykcałej
branży.Cowięcej,składniaC,naktórejopierasięC++,stanowirów-
nieżpodstawęjęzykówJava,C#,JavaScriptiwieluinnych.Nawetjeśli
nieznamyC++,istniejąsporeszanse,żeprzyodrobiniewysiłkubędzie-
mywstaniezrozumiećzawartetupróbkikodu.
NauczenieC++niejestcelemtejksiążki.Przykładyzostałydobrane
tak,abybyłytakproste,jaktomożliweiniesąreprezentatywnedla
dobregostylukorzystaniazC++.Należyjeczytać,zwracającuwagę
naideę,jakąwyrażają,anienawyrażającyjąkod.
Wszczególnościkodtenniezostałnapisanywenwspółczesnym”stylu
charakterystycznymdlaC++wwersji11lubnowszej.Niekorzysta
onzestandardowejbibliotekiijedyniezrzadkawykorzystujeszablony.
Sprawiato,żepowstajenkiepski”kodC++,mamjednaknadzieję,że
dziękitymograniczeniombędzieonbardziejprzystępnydlaosóbkorzy-
stającychnacodzieńzC,Objective-C,Javyiinnychjęzyków.
Abyuniknąćmarnowaniamiejscanakod,któryjużwidzieliśmylub
któryniemaznaczeniadladanegowzorca,fragmentykoduzostaną
6Wprowadzenie–Kilkasłówoprzykładowymkodzie