Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Nx - panaceum na wszystko?

Nx - panaceum na wszystko?

Tworząc architekturę aplikacji frontendowej stoimy przed wyborem, który rzutuję na przyszłość aplikacji w aspektach tak jak: - Wdrażanie nowego kodu - Jakość i kształt FrontendOps - Możliwość zmian - Skalowalność - Próg wejścia - I wiele innych… Szukając odpowiedniej metodyki lub narzędzia, szybko można trafić na rozwiązanie wspierające podejście monorepo a mianowicie Nx extension. Dodatkowo wielu Angularowych architektów proponuje to rozwiązanie i na nim bazuje. W trakcie prezentacji odpowiemy na zadane w tytule pytanie, czy Nx to faktycznie panaceum na wszystko? A jeżeli nie, to jakie mamy alternatywy?

Avatar for Szymon Pawlak

Szymon Pawlak

March 23, 2021

Other Decks in Programming

Transcript

  1. Agenda 1. Architektura frontendowa – pamiętajmy o tym! 2. Moja

    historia 3. Wpisujesz w google „frontend architecutre”… 4. Porównanie monorepo vs multirepo 5. Nx i inni 6. W stronę microfrontend
  2. – Iframes – Through NGINX – Angular Elements – Angular

    Libraries – Monorepos – Customized Orchestrator Wpisuje Angular frontend architecture… Enterprise Angular DDD, Nx Monorepos and Micro Frontends, Manfred Steyer
  3. The repo is used by over 20,000 engineers and contains

    over 2 billion lines of code The primary exceptions are Chrome and Android. Advantages and Disadvantages of a Monolithic Repository A case study at Google
  4. – Ujednolicone wersjonowanie, jedno źródło prawdy – Szerokie udostępnianie kodu

    i ponowne wykorzystywanie – Uproszczone zarządzanie zależnościami – Refaktoryzacja na dużą skalę – Współpraca między zespołami – Elastyczne granice zespołu i własność kodu – Widoczność kodu i przejrzysta struktura drzewa zapewniająca domyślną przestrzeń nazw zespołów – Bardzo małe zmiany (atomic changes) Główne zalety monorepo według Googla
  5. Na co trzeba zwrócić uwagę? – Dostępność kodu – Wersjonowanie

    komponentów – Narzędzia – Kto jest odpowiedzialny za kod? – Proces wydawania oprogramowania – Testowanie – Wielkość pakietów – Performance – Częstość globalnych zmian, jak rebranding, aktualizacja frameworka, itd.. – Conway’s Law Współdzielenie DevOps Skalowanie Komunikacja
  6. Nx