Logo

Ep. 35 – Návrhové vzory

Návrhové vzory boli pre mňa ďalšia taká dosť mätúca vec, ktorú sme na vysokej škole preberali. Nevedel som pochopiť, na čo mi to je. Buď nám to nebolo dobre vysvetlené, alebo je to taká vec, na ktorú človek jednoudcho musí praxou dozrieť. A tak sme o nich nahrali epizódu, ktorá ti snáď pomôže návrhové vzory pochopiť.

Stiahnuť

(00:00 – 00:39) – Úvod
(00:40 – 02:59) – Čo sú to návrhové vzory?
(03:00 – 05:49) – Na čo sú dobré?
(05:50 – 07:02) – Singleton
(07:03 – 07:29) – Čo sú to návrhové vzory? – zhrnutie
(07:30 – 09:20) – Na čo sú dobré? V.2
(09:21 – 11:21) – Najprv sa nauč základy OOP
(11:22 – 12:29) – Neuč sa ich naspamäť
(12:30 – 15:55) – Využitie v praxi
(15:56 – 17:30) – Delenie návrhových vzorov
(17:31 – 19:38) – Facade
(19:39 – 22:38) – Máš sa ich učiť? Môžu sa vyskytnúť na pohovore?
(22:39 – 27:32) – Nevýhody návrhových vzorov
(27:33 – 29:21) – Zhrnutie
(29:22 – 30:26) – Rada do života ohľadom návrhových vzorov
(30:27 – 31:37) – Záver

Čo sú to návrhové vzory?

  • sú to spísané riešenia na problémy, ktoré sa často objavujú pri navrhovaní OOP softvéru
  • nie sú to kúsky kódu, ktoré skopíruješ a máš hotové
  • skôr sú to pomôcky, ktoré ti povedia, akým spôsobom vieš prepojiť alebo štrukturovať objekty v OOP

Na čo sú návrhové vzory dobré?

  • vedia urýchliť vývoj
  • pomáhajú k čitatelnejšiemu kódu – pretože sa využíva niečo zaužívané a jednotné čo všetci poznajú
  • jednoduchšia komunikácia“použi tam factory” je jednoduchšie a kratšie ako “Sprav si tam abstraktnú triedu, ktorá ti bude vytvárať inštancie tohto objektu. Bude vlastne nahrádzať rôzne konštruktory…”

Musíš ich vedieť?

  • netreba ich vedieť naspamäť
  • je veľmi dobré vedieť, že niečo také existuje a čo to približne je
  • raz si ich poriadne prejdi, skús ich ako tak pochopiť – v budúcnosti si na ne potom ľahšie spomenieš, keď ti ich bude treba
  • na pohovore sa ťa na ne môžu pýtať, ale vtedy stačí ak ich aspoň zopár poznáš

Delenie návrhových vzorov

  • vytvárajúce (creational) – riešia ako sa objekty vytvárajú – napr. singleton, builder, factory method
  • štrukturálne (structural) – zlúčenie (kompozícia), delenie a dedenie tried – napr. adapter, facade, bridge
  • behaviorálne (behavioural) – zaoberajú sa komunikáciou medzi objektami – napr. visitor, observer, mediátor

Nevýhody návrhových vzorov

  • pre začínajúceho programátora môžu byť komplikované a nezmyselné
  • programátor môže mať svoje 2 obľúbené vzory a bude ich všade používať – aj tam, kde sa vôbec nehodia
  • ľahké zneužívanie vo všeobecnosti

Kniha o návrhových vzoroch z roku 1994! – na Amazone
Pekne spracované návrhové vzory – refactoring.guru

Logo
Street of Code o.z.Hlaváčiková 2984105, Bratislava
Chcem odoberať novinky
Poskytnutím emailu súhlasíš s jeho spracovaním v súlade s GDPR.
Copyright © 2024 Street of Code
Kód tejto stránky si vieš pozrieť na našom GitHub-e