Angular Warsaw #33
Z ogromna radością informujemy ze po tej bardzo długiej przerwie, wracamy do stacjonarnych meetupów. Czyż to nie wspaniałe spotkać się, porozmawiać w 4 oczy, zjeść pizzę czy wypić piwo?!
Cały czas szukamy prelegentów na kolejne edycje, zapraszamy do kontaktu.
Agenda prezentuje się następująco:
Maciej Sikorski: “Jak zapanować nad modułami w NestJS”
Streszczenie: NestJS chwali się tym że rozwiązuje problem braku architektury występujący przy pracy z innymi frameworkami ze środowiska Node.js. Rzeczywiście jest to narzędzie, które podobnie jak Angular umożliwia pisanie modularnych aplikacji i dostarcza fajny system Dependency Injection. Jednak jest to tylko narzędzie i jeśli będziemy używać go w nieodpowiedni sposób to nasza architektura może przybrać postać antypatternu Wielkiej Kuli Błota.
Podczas tej prelekcji zaprezentuję dlaczego w aplikacjach napisanych w NestJS bardzo często występuje chaos zależności pomiędzy modułami oraz przedstawię zasady, których warto przestrzegać przy planowaniu modułów, aby uniknąć tej sytuacji
Kamil Gajowy: “Modelowanie czytelnych testów systemu”
Streszczenie: Często spotykamy się z istniejącą częścią systemu, ale nie wiemy, do czego służy, w jaki sposób jej używać, czego wymaga do poprawnego działania oraz jaki jest spodziewany efekt końcowy. Dokumentacja to jedno, a żyjący organizm zdarza się być czymś zupełnie innym. Możemy uznać za połowiczny sukces, jeżeli istnieją testy, które mogą nam rzucić trochę światła na brak wiedzy. Połowiczny - gdyż kod opisujący dany przypadek może być opisany przez proste słowa, ale tworzący skomplikowane, wymieszane zdania.
Pokażę, jak można zorganizować test danej części systemu. Forma czerpie z BDD, ale zdecydowanie na mniejszą skalę - z powodzeniem można stosować ją nawet do testów jednostkowych. Będziemy korzystać z notacji Given-When-Then pełnymi garściami, używając tylko bazowych składowych NestJS.
Dominik Ostrowski: “Architektura heksagonalna a NestJS.”
Streszczenie: W przypadku gdy zaplanowaliśmy moduły naszego systemu, na następnym etapie musimy zastanowić się w jaki sposób zorganizować nasze moduły wewnętrznie.
Kiedy mamy do czynienia z czymś bardziej złożonym niż moduły klasy CRUD – dobrym pomysłem może być zastosowanie architektury heksagonalnej. Takie podejście może ułatwić również późniejsze wydzielenie modułu jako osobną usługę.
Przedstawię główne założenia architektury heksagonalnej, propozycję wdrożenia jej w środowisku NestJSa oraz jak możemy w takim układzie wydzielić mikroserwis.
Miejsce spotkania:
House of Angular
Budynek Instytutu Podstaw Informatyki Polskiej Akademii Nauk
Ul.Jana Kazimierza 5 , Warszawa