Świadome projektowanie – 12 wzorców, które powinieneś znać
Dodatkowa zawartość
- kody, na których omawiam poszczególne wzorce (kody są dostępne w części "Wstęp")
- quiz na koniec
Świadome projektowanie – osiągnij kolejny poziom programowania
Witaj w świecie kodowania, gdzie jakość i efektywność są kluczem do sukcesu. „Świadome projektowanie” to nie tylko kurs, to Twoja przepustka do świata zaawansowanego projektowania oprogramowania. Poznaj 12 kluczowych wzorców projektowych, które są fundamentem profesjonalnego kodowania.
Na szkoleniu dowiesz się, kiedy wzorce pomagają, a kiedy przeszkadzają. Programowanie to czasem naginanie lub omijanie pewnych zasad. Jednak, żeby naginać je świadomie, musisz je najpierw dobrze poznać.
Odkryłem koło!
Programowanie to rozwiązywanie problemów. Przypomnij sobie, jak często tracisz czas na szukanie rozwiązania dla, mogłoby się wydawać, standardowego problemu? Albo zadajesz sobie pytania: „dlaczego to akurat jest tak zaprojektowane?”.
Te standardowe problemy programistyczne mają swoje standardowe rozwiązania, które ewoluowały z czasem. Zostały już świetnie przetestowane i zaimplementowane w wielu systemach, stając się pewnym standardem.
Nie wymyślaj tego na nowo. Skorzystaj ze wzorców, które mówią Ci co i jak powinieneś zaprojektować, żeby dany problem rozwiązać.
Dlaczego ten kurs jest dla Ciebie?
Odkryj tajniki wzorców
zrozumienie wzorców projektowych to niezbędna wiedza dla każdego ambitnego programisty. Z tym kursem poznasz je od podstaw do zaawansowanych zastosowań
Nauka przez praktykę
każdy wzorzec jest zilustrowany przykładami w kodzie C#, co ułatwi Ci zrozumienie i zastosowanie ich w praktyce
Level up!
bez względu na to, czy jesteś początkującym, czy doświadczonym programistą, ten kurs dostarczy Ci wiedzy potrzebnej do pisania czystszego, bardziej efektywnego i lepszego kodu
Po co ten kurs?
Jeśli jesteś senior architektem, to pewnie poza odświeżeniem wypracowanej wiedzy, niczego Ci nie da. W innym wypadku, dzięki temu szkoleniu, będziesz w stanie bardziej świadomie projektować fragmenty jak i całe systemy.
Nie twórz koła na nowo
Nie wymyślaj tego, co już jest. Przed Tobą naprawdę byli programiści, którzy rozwiązali Twoje problemy. Serio, nie jesteś pierwszy. Wykorzystaj rozwiązania, które już istnieją i zostały dobrze przetestowane.
Pisz i projektuj szybciej
Dzięki wzorcom nie musisz tracić czasu na rozwiązywanie standardowych problemów. Szybciej i lepiej napiszesz swój kod, mogąc skupić się na faktycznych problemach domenowych.
Lepszy system
Stosowanie wzorców pozwala uniknąć różnych pułapek, które mogłyby się pojawić w trakcie implementowania własnych rozwiązań. Wzorce są naprawdę dobrze przemyślane.
Lepsza komunikacja
Mimo, że jesteśmy programistami, czasami trzeba pogadać z innymi 🙂 Komunikacja między programistami znającymi wzorce projektowe może być dużo łatwiejsza. Nie musisz im wyjaśniać jak to działa, powiedz po prostu: „To jest oparte na wzorcu memento„.
Zawartość szkolenia
Kurs składa się z serii filmów. Po finalizacji zamówienia dostaniesz dostęp do platformy kursowej, na której czekać na Ciebie będzie 13 lekcji wraz z przykładowymi kodami.
Na pierwszym nagraniu opowiadam, czym w ogóle są wzorce projektowe, kiedy ich używać i kiedy lepiej ich unikać. Na następnych nagraniach omawiam szczegółowo konkretne wzorce, pokazując Ci:
- problemy, które wzorzec rozwiązuje
- konkretne przypadki, w których go używać
- sposób działania wraz z omówieniem
- diagram UML wraz z omówieniem
- przykład lub przykłady w kodzie C# z konkretnym omówieniem
- plusy i minusy
Jakich wzorców się nauczę:
Wstęp [00:08:43]
Z wstępu dowiesz się czym właściwie są te wzorce, czy warto się ich uczyć i kiedy pomagają, a kiedy mogą przeszkadzać w tworzeniu oprogramowania
Singleton [00:14:43]
Singleton przyda się, gdy potrzebujesz dokładnie jednej instancji klasy w całym systemie. Ale uwaga! Bardzo łatwo wpaść w pułapkę singletona i stworzyć nietestowalny system. Źle użyty singleton może być antywzorcem.
Fabryka (Factory), fabryka abstrakcyjna i metoda fabryczna (factory method) [00:22:46]
Wzorzec szalenie przydatny w każdym systemie. Pozwala na tworzenie obiektów na podstawie parametru, który może być przekazany przez użytkownika lub pobrany w inny sposób.
Budowniczy (Builder) z nadzorcą i bez nadzorcy [00:17:25]
Budowniczy pozwala na stworzenie obiektu, którego konstrukcja składa sie z wielu kroków. Budowniczy daje już w pełni działający obiekt. Co może być dla Ciebie ciekawe, na tym wzorcu jest zbudowana konfiguracja .NET.
Strategia (Strategy) [00:13:05]
Umożliwia zastosowanie różnych algorytmów do wykonania zadania. Algorytmy mogą być wybierane w runtime.
Metoda szablonowa (Template method) [00:17:18]
Jeśli różne algorytmy mają pewną część wspólną, metoda szablonowa jest niezastąpionym mechanizmem, który pomaga pozbyć się duplikacji kodu i świetnie zaoszczędzić czas.
Odwiedzający (Visitor) [00:22:53]
Gdy potrzebujesz dodać funkcjonalność w runtime na poziomie całej klasy. Albo jeśli chcesz po prostu pozbyć się drabinki ifów (if object is…else…)
Pamiątka (Memento) [00:24:54]
Ten wzorzec umożliwia cofanie i ponawianie operacji.
Polecenie (Command) [01:26:31] – tworzymy tu bardzo prostego CADa w C#
Niesamowicie użyteczny, gdy jest dużo interakcji z użytkownikiem. Lub, gdy z jakiegoś powodu chcesz mieć konkretne zadania umieszczone w konkretnych obiektach. Np., żeby stworzyć system nagrywania makr. Świetnie współpracuje ze wzorcem Memento.
Fasada (Facade) [00:09:11]
Gdy chcesz ukryć pod jedną metodą, całą serię innych wywołań i powiązań różnch obiektów.
Adapter [00:14:19] klasowy i obiektowy
Umożliwia połączenie niekompatybilnych systemów.
Proxy [00:15:05]
Gdy potrzebujesz większej kontroli nad pracą innych obiektów. Idealnie nadaje się do lazy loading, czy też do chowania funkcjonalności za mechanizmem autoryzacji.
Dekorator [00:16:45]
Gdy chcesz dodać funkcjonalność w runtime do konkretnych obiektów.
Zobacz jedną część kursu
Poniżej udostępniam jedną z części kursu – opowiadam o wzorcu MEMENTO, które świetnie współgra ze wzorcem POLECENIE. Zobacz sobie jak to wygląda:
FAQ
Na jak długo otrzymam dostęp do kursu?
Dostęp masz do końca świata. Nie ma żadnych ograniczeń czasowych. Tak długo, jak będziesz miał konto na platformie, będziesz miał dostęp do tego szkolenia.
W jakiej formie jest kurs?
To jest kurs video trwający nieco ponad 4 godziny. Na każdym filmie omawiam konkretny wzorzec w szczegółach, pokazując również jak go zaimplementować w C#. Do niektórych wzorców jest więcej niż jeden projekt.
Co muszę wiedzieć, aby zrozumieć kurs?
Powinieneś znać podstawy programowania w C#. No i wiedzieć czym jest klasa, klasa abstrakcyjna i interfejs. Ale skoro tu jesteś, to pewnie to już wiesz. Kurs prowadzę w sposób prosty. Więc nie jest potrzebna znajomość UMLa. Chociaż diagramy UML też są omawiane, to bez jego znajomości w zupełności dasz radę.
Co z tym newsletterem? Czy faktycznie mogę się zapisać i mieć kurs za free?
Tak. Na przygotowanie tego kursu poświęciłem kilkadziesiąt godzin. Zależy mi jednak na budowaniu swojej społeczności, więc jeśli zapiszesz się na newsletter, dam Ci do niego dostęp za free.
I spokojnie, Twoj adres jest bezpieczny. A raz w tygodniu dostaniesz ode mnie porcję fajnej wiedzy na temat C# i .NET
A co jeśli zapiszę się na newsletter, a potem zrezygnuję?
No cóż, masz do tego prawo. I cały czas będziesz miał dostęp do kursu.
Jednak jeśli faktycznie będziesz chciał zrezygnować z newslettera, daj mu szansę przez kilka tygodni (jeden mail tygodniowo). Jeśli nie będą Ci się podobały materiały, które podsyłam lub uznasz je za zbyt proste lub zbyt trudne dla Ciebie, to się wypisz.
O kursie
- Dzięki temu szkoleniu będziesz bardziej świadomie projektował systemy. Będziesz lepiej nazywał swoje klasy (wiesz, czy klasa jest adapterem, fasadą, czy proxy). Zaczniesz zauważać wzorce w innych aplikacjach i dzięki temu szybciej i lepiej rozumieć, jak działają.
- No i przede wszystkim poznasz ogólne, najlepsze sposoby na rozwiązywanie standardowych problemów programistycznych.
Program szkolenia
Wstęp
-
O wzorcach projektowych
08:44 -
Sprawdź, co wyniosłeś