Dobre praktyki developerskie w C#

Odbiorcy: Senior Developer, Developer, Junior Developer

Poziom:

Średniozaawansowany

Kategoria:

C#

SOLID

Forma: 10% wiedzy, 90% praktycznego warsztatu

Opis szkolenia

Szkolenie "Dobre Praktyki Developerskie w C#" jest zaprojektowane z myślą o głębokim zrozumieniu, a nie tylko powierzchownym poznaniu zasad dobrego programowania.

Celem szkolenia jest nie tylko przedstawienie reguł, ale także wyjaśnienie ich znaczenia, pochodzenia i rozwiązanych problemów.

Uczestnicy będą prowadzeni przez proces zrozumienia fundamentalnych zasad dobrego programowania w C#, zaczynając od zasad SOLID, poprzez właściwe wykorzystanie wzorców projektowych, aż po mniej znane architektury aplikacyjne, takie jak Onion Architecture, Railway Orientated Programming i Dataflow. Szkolenie kładzie nacisk na krytyczne myślenie i zrozumienie, dlaczego pewne praktyki są ważne.

Najważniejsze Zagadnienia:

  • Zasady SOLID: Dogłębne zrozumienie zasad SOLID i ich zastosowania w praktyce.
  • Wzorce Projektowe: Omówienie wzorców projektowych, ich właściwe wykorzystanie i potencjalne pułapki.
  • Mniej Znane Architektury Aplikacyjne: Wprowadzenie do mniej znanych, ale efektywnych architektur aplikacyjnych.
  • Krytyczne Myślenie w Programowaniu: Nauka podejścia analitycznego do stosowania zasad i wzorców w programowaniu.
  • Praktyczne Ćwiczenia i Przykłady: Ćwiczenia i studia przypadków, które pomogą uczestnikom zrozumieć i zastosować naukę w praktyce.

Program szkolenia

Start, przywitanie etc (15 min)

SOLID (380 min)

Bardzo wiele się mówi o SOLID, ale mało kto wyjaśnia czemu i jak. W efekcie często widzimy ślepe podążanie za nie w pełni zrozumiałymi zasadami. U nas na ten temat poświęcamy dużo czasu. Dlatego, że to jest absolutna podstawa do dalszych dobrych praktyk kodowania. Nie dlatego, żeby stosować religijnie, ale żeby zrozumieć i stosować odpowiednio.

Poruszane tematy:

  • omówienie S, O I i D
  • refaktor istniejącej aplikacji

Wzorce projektowe (585 min)

Z adopcją wzorców jest tak, że pierw się je ignoruje, potem używa wszędzie a potem tylko tam gdzie jest potrzeba. Naszym celem jest przejście szybko przez fazę pierwszą i drugą i zatrzymanie się na trzeciej. Pokażemy po co jest każdy z wzorców. Jak do niego dojść korzystając z prostych zasad SOLID i kiedy się sprawdza, a kiedy może niekoniecznie.

Poruszane tematy:

  • Factory i Abstract factory
  • Decorator
  • Rule engine
  • Object Pool
  • Chain of responsibility - Łańcuch odpowiedzialności
  • Object Builder
  • Observable
  • State Machine
  • Singleton

Mniej znane architektury aplikacyjne (180 min)

Ten moduł skupia się na mniej popularnych, ale równie ważnych architekturach aplikacyjnych, które oferują unikalne podejścia do projektowania i strukturyzowania oprogramowania. Szczególną uwagę poświęcimy dwóm architekturom: Hexagonalnej i Railway Oriented Programming.

Uczestnicy modułu zdobędą wiedzę na temat tych architektur, ich zalet, zastosowań i sposobów implementacji w praktyce programistycznej.

Główne Zagadnienia:

Architektura Hexagonalna:

  • Zrozumienie podstawowej koncepcji i korzyści płynących z Architektury Hexagonalnej.
  • Analiza sposobów oddzielania logiki biznesowej od mechanizmów wejścia/wyjścia.
  • Praktyczne przykłady zastosowania Architektury Hexagonalnej w projektowaniu oprogramowania.

Railway Oriented Programming:

  • Wprowadzenie do Railway Oriented Programming jako metody zarządzania błędami i przepływem logiki w aplikacjach.
  • Nauka konstruowania "torów" do obsługi sukcesów i błędów w programowaniu funkcjonalnym.
  • Przykłady i najlepsze praktyki zastosowania Railway Oriented Programming w rzeczywistych projektach.

Zakończenie, ankieta, etc (15 min)

Rozwiń

Opinie

Profesjonalnie prowadzone szkolenie, pokazujące nie tylko jak zrobić ale i dlaczego/jak nie robić.

Ogólnie szkolenie bardzo fajne, idąc myślałem, że będzie to jedno z tych nudnych, w których robię już setny raz to samo, ale jednak się myliłem.

Kompetencja, zaangażowanie, dobry dobór i przygotowanie ćwiczeń praktycznych.

Znakomity poziom wiedzy z danego obszaru, oparty na praktyce. Przykłady z życia pokazują, że trener stosował w projektach to o czym naucza.

Nie spotkałem wcześniej bardziej entuzjastycznego trenera i kogokolwiek w naszej branży. Tak trzymać :)

Ciekawe, tego się spodziewałem. Mało suchej teorii, dużo praktycznych ćwiczeń to znakomity pomysł.

  • Odbiorcy:
    Senior Developer, Developer, Junior Developer
  • Poziom:
    Średniozaawansowany
  • Kategoria:

    C#

    SOLID

  • Forma:
    10% wiedzy, 90% praktycznego warsztatu
  • Czas trwania:
    2,5 dni
  • Miejsce szkolenia: