#373

Clean Code i dobre praktyki OOP w Javie

Warsztat odbywa się w formie zdalnej za pośrednictwem platformy/komunikatora online, z wykorzystaniem dźwięku, obrazu z kamery, udostępniania ekranu komputera prowadzącego i uczestników.

**Clean Code**

Zwykle podczas pisania kodu to co nas interesuje w pierwszej kolejności to to, aby nasz program zrobił to czego od niego oczekujemy i abyśmy zmieścili się w deadline, jakie narzucił nam klient.
Rzadko kiedy myślimy o tym, iż kiedyś do tego kodu będzie trzeba wrócić za jakiś czas i coś w nim zmienić. Zazwyczaj wtedy okazuje się, że sami nie rozumiemy tego co stworzyliśmy.
Lub też jeszcze gorzej – przejmujemy kod po kimś i jedyne na co mamy ochotę po jego zobaczeniu to przepisanie go od zera (na co oczywiście nigdy nie ma czasu)

Dlaczego tak się dzieje ? Odpowiedź jest prosta – podczas tworzenia programu nie zastosowaliśmy (lub nasz poprzednik) czegoś takiego jak Clean Code.
Jest to technika tworzenia kodu w taki sposób aby był on łatwy do zrozumienia i równie łatwy do wproawdzenia zmian.
Na warsztacie pokażę kilka podstawowych metod od których można zacząć aby nasz kod można było nazwać czystym kodem i uniknąć wytykania nas palcami przez nieszczęśników, którzy kiedyś go przejmą.

**Dobre praktyki programowania obiektowego**

Programowanie obiektowe wydaje się być bardzo naturalnym stylem programowania – tworzymy w naszym kodzie obiekty odpowiadające prawdziwym bytom a następnie definujemy interakcje jakie chcemy aby między nimi zachodziły.

Jak zwykle jednak diabeł tkwi w szczegółach i jeżeli nie zastosujemy się do paru podstawowych zasad, doprowadzimy do sytuacji, w ktorej relatywnie proste zadanie jakie ma wykonać nasz program skończy się nadspodziewanie zawiłym i trudnym w utrzymaniu kodem.

Podczas warsztatów omówimy kilka podstawowych reguł programowania obiektowego, których znajomość zaoszczędzi nam powyższych problemów.

**Dlaczego Java?**

Zarówno koncepcja clean code jak też programowanie obiektowe są pojęciami absolutnie niezależnymi od konkretnego języka programowania.
Jednakże podczas warsztatów by przeprowadzić ćwiczenia praktyczne, musimy wybrać jakiś język.
W naszym przypadku będzie to Java ze względu na to iż z jednej strony jest obecnie jednym z najpopularniejszych języków, a z drugiej strony jest zorientowana obiektowo.

Notatnik

Wymagania wstępne

Od uczestników wymagana jest podstawowa znajomość języka Java i umysł otwarty na zmiany :)
Podczas warsztatu uczestnicy korzystają z własnych komputerów.

Prowadzący

Marcin Chrost:

Java & Web Developer oraz Technical Leader w firmie JCommerce z ponad 10 letnim stażem. Uczestniczył w wielu międzynarodowych projektach. Od czasu do czasu wspiera młodszych kolegów w rozwoju zawodowym. Lubi nowości w świecie IT, aczkolwiek podchodzi do nich z rozsądkiem i rezerwą wynikającą z doświadczenia. Najbardziej ceni sobie dobrze zgrane zespoły, które potrafią się same motywować i sobą zarządzać. Uważa też że umiejętności miękkie w świecie IT są tak samo ważne jak twarde a zwykle bardzo niedoceniane.

Program warsztatów

  1. Wprowadzenie
    1. zasady ogólne
    2. nazewnictwo
    3. funkcje / metody
    4. klasy / obiekty
    5. struktura kodu
    6. komentarze
  2. Dobre praktyki programowania obiektywnego
    1. reguły SOLID
    2. zasada Hollywood
    3. prawo Demeter
    4. kompozycja ponad dziedziczeniem

Uwaga

Liczba miejsc ograniczona! Organizator zastrzega sobie prawo do odwołania wydarzenia w przypadku niezgłoszenia się minimalnej liczby uczestników.
Zakupione certyfikaty zostaną przesłane uczestnikom w formie elektronicznej po warsztacie. Jeśli chcesz otrzymać zakupiony certyfikat w formie papierowej, zgłoś to mailowo na adres kontakt@stacja.it.
**Rejestracja dostępna bezpośrednio pod poniższym [linkiem.](https://app.evenea.pl/event/cleancode2305)**

Zapisy na wybrany warsztat zostały zakończone.