Nowoczesne podejście do programowania w Delphi
Cel szkolenia
Zapoznanie uczestników z zasadami nowoczesnego tworzenia projektów Windows VCL Application.
Od czasu powstania Delphi oraz wprowadzania w nim metodyki tworzenia aplikacji przez prototypowanie minęło już prawie 20 lat. Podejście wizualne i komponentowe do dzisiaj jest bardzo wygodne przy realizacji niektórych zadań. Przez ostatnie lata praktyki te uległy jednak ogromnym zmianom, a podejście obiektowe do rozwoju i utrzymania systemów informatycznych stało się modelem dominującym, spychając paradygmat komponentowy na margines. Szkolenie ma zapoznać uczestników jak wykorzystać ogólnie przyjęte zasady tworzenia systemów informatycznych przy budowaniu i rozwoju klasycznych projektów Windows VCL w Delphi.
Podczas szkolenia pokażemy jak podejść do modernizacji w sposób ewolucyjny, tak aby stopniowo i bez większych rewolucji przekształcać duże projekty oparte na kodzie zdarzeniowym w bardziej nowoczesne systemy zorganizowane obiektowo.
Uczestnicy zyskają wiedzę w zakresie:
- Budowy wydajnych aplikacji dla serwerów SQL oraz projektowania interfejsu użytkownika dostosowanego do architektury klient-serwer,
- Uaktualnia obowiązujących trendów projektowania systemów;
- Wykorzystania repozytorium Git;
- Kodowania w wersji zespołowej. Pracy w parach;
- Dzielenia się kodem źródłowym i pracy z cudzym kodem;
- Sposobu realizacji i wartości przeglądów kody źródłowego;
- Organizacji warsztatu pracy programisty;
- Dobrych praktyk refaktoryzacji kodu;
- Efektywnego wykorzystania typów generycznych i metod anonimowych;
- Tworzenia kodu re-używalnego i odpornego na błędy;
- Kodowania zgodnie z praktykami czystego kodu;
- Tworzenia kodu solidnego, czyli zorganizowanego obiektowo, w którym zależności jest niewiele, a obiekty są luźno powiązane ze sobą, co pozwala na ich łatwe włączanie, wyłączanie i zastępowanie;
- Wykorzystania architektury MVC, czyli Model-View-Controller;
- Łączenia zasady programowania obiektowego z interfejsem obiektowym budowanym nadal w sposób komponentowy oparty o zdarzenia;
- Modernizacji dużych i skomplikowanych projektów VCL z klasycznej architektury komponentowej do nowocześniejszej architektury obiektowej;
- Tworzenia testów jednostkowych i zarządzania nimi;
- Wstawiania zaślepek, czyli obiektów symulujących działanie bardziej skomplikowanych modułów do celów testowania.
Szkolenie jest przeznaczone dla:
- programistów Delphi, którzy od wielu lat tworzą aplikacje VCL z bogatym interfejsem użytkownika GUI;
- programistów którzy chcą unowocześnić swój warsztat pracy;.
- kierowników zespołów, którzy chcą zaplanować proces modernizacji.
Plan szkolenia (agenda)
- Wprowadzenie
- Praca z Git. Zdalne i lokalne repozytorium.
- Tworzenie gałęzi, rozgałęzienia i scalanie gałęzi.
- Wykorzystanie Git++ (GitHub, GitLab, tid.): zgłaszanie poprawek, przeglądy kodu źródłowego, akceptowanie zmian, dyskusje online i dokumentowanie kodu, zgłaszanie poprawek do kodu i planowanie ulepszeń kodu źródłowego.
- Separacja modułów danych i odcinanie zbędnych zależności
- Zasady czystego kodu
- Czyszczenie dużych i zaniedbanych projektów
- Nazewnictwo i formatowanie kodu
- Złe zapachy kodu.
- Stosowanie Class Helpers.
- Definiowanie klas i użycie kolekcji (zastępowanie TStringList typami generycznymi).
- Refaktoryzacja istniejącego kodu.
- Zastosowanie obiektowości, aby zwiększyć reużywalność kodu. Separacja samodzielnych podsystemów.
- Praktyki kodu solidnego
- Dobre praktyki programowania obiektowego
- Zastosowanie interfejsów do odcinania zależności między obiektami
- Prawo Demeter (Law Of Demeter)
- Wstrzykiwanie zależności i kontenery wstrzykiwania
- Singleton i fabryki produkujące obiekty
- Zasady SOLID
- Szyna powiadamiania obiektów – Event Bus
- Wzorce Gang of Four (przegląd wybranych wzorców)
- Automatyczne testowanie kodu.
- Testy jednostkowe, autonomizacja kodu (code decoupling)
- Zaślepki (mocks)
- Zalety nowoczesnej architektury w akcji (po migracji przykładowego projektu)
- Łatwiejszy rozwój projektu
- Większa reużywalność kodu
- Automatyczna kontrola bezpieczeństwa przez testy jednostkowe
- Wykorzystanie kodu w architekturze wielowarstwowej
- Przenoszenie kodu do aplikacji mobilnych w FireMonkey
Warunki szkolenia
Czas: 4 dni
Cena: 3 200 zł + 23% VAT
Podczas szkolenia kursanci korzystają ze swoich komputerów. Jeśli uczestnik szkolenia chce korzystać z komputera BSC Polska konieczna jest dopłata w wysokości 140 zł (+ VAT) do ceny szkolenia.
Wykorzystywane narzędzia i platformy
- RAD Studio (wersja XE8 lub nowsza)
- Git
- Konto na GitHub
- Inne narzędzia i biblioteki instalowane w czasie szkolenia (rozwiązania Open Source)
Wymagania wstępne
- Znajomość Delphi
- Doświadczenie w tworzeniu rozbudowanych aplikacji VCL dla Windows
- Założenie darmowego konta w serwisie http://github.com
Certyfikat
Dyplom ukończenia szkolenia wydany przez firmę BSC Polska – autoryzowanego partnera szkoleniowego firmy Embarcadero.
Forma szkolenia
- Prezentacje
- Dyskusje
- Ćwiczenia realizowane przy stanowiskach komputerowych
Materiały szkoleniowe
- Wydruk prezentacji szkoleniowej
- Materiały do ćwiczeń
- Komplet materiałów biurowych
Wielkość grupy
- od 6 do 8 osób