Mentionsy Mentionsy
Better Software Design
Better Software Design

77. O couplingu i decouplingu w systemie z Grzegorzem Piwowarkiem

02.01.2024 ·1 godz 2 min · 7 rozdziałów

Gdy coś się dobrze zaczyna, często kończy się źle... A jednym z tego powodów w projekcie jest niekontrolowane wprowadzenie couplingu, czyli sprzęganie różnych jego elementów ze sobą. Różne komponenty nagle stają się od siebie zależne, logika biznesowa połączona z frameworkiem czy bazą danych, a w efekcie całość jest coraz trudniejsza do utrzymania i rozwoju. Zwiększając sprzężenie zmniejszamy kohezję rozwiązania, a w myśl zasad GRASP Low Coupling i High Cohesion warto postępować dokładnie na odwrót.Na szczęście decoupling może zostać zrealizowany w projekcie na wiele różnych sposobów. A czasem wręcz świadomie pominięty, ponieważ nie przyniesie on oczekiwanych efektów.Dziś zapraszam na odcinek z Grzegorzem Piwowarkiem na tematy poświęcone couplingowi, decoplingowi i trzymania rzeczy w projekcie niektórych rzeczy (jak frameworki) na dystans, w którym rozmawiamy między innymi o:odcinaniu frameworka webowego czy ORM,efektach i zyskach płynących z decouplingu,przydatnych heurystykach pomagających odpowiedzieć na pytanie, czy warto odcinać daną zależność,architekturze heksagonalnej,historiach z życia...Materiały dodatkowe:Trzymaj Springa na dystans , wspomniana w rozmowie prezentacja Grzegorza z konferencji Confitura 2022Recipes for Decoupling, książka Matthiasa Nobacka opisująca implementację konceptów dla ekosystemu PHP4comprehension.com, strona Grzegorza, na której można zapoznać się zarówno z ofertą szkoleń programistycznych jak i wpisami związanymi z Javąpivovarit@x, profil Grzegorza na Twitter/X

Wprowadzenie i przedstawienie gościa

Marusz Gil przedstawia gościa, Grzegorza Piwowarka, i omawia temat couplingu i dekaplingu w systemie.

4:02
Przedstawienie osobistego doświadczenia

Grzegorz opisuje swoje doświadczenia z frameworkami i/frameworki, podkreślając konsekwencje silnego couplingu.

4:13
Analiza couplingu w Javie

Grzegorz analizuje konsekwencje silnego couplingu z frameworkami w Javie, podkreślając problemy z elastycznością i testowalnością.

7:47
Zakłócenia w systemie z frameworkami

Grzegorz omawia konsekwencje silnego couplingu z frameworkami, w tym trudności migracji i utrata elastyczności systemu.

6:31
Techniki odcinania się od frameworków

Grzegorz przedstawia różne techniki odcinania się od frameworków, takie jak zdenormalizowanie modelu domeny i wykorzystanie narzędzi jak JDBI.

7:15
Kontekst i decyzje dotyczące couplingu

Rozmowa koncentruje się na decyzjach dotyczące couplingu w systemie, w tym techniki odcinania się od frameworków i decyzje dotyczące integracji.

24:11
Wpływ czynnika ludzkiego na architekturę

Grzegorz omawia wpływ czynnika ludzkiego na decyzje architektoniczne, w tym zatrudnienie i preferencje zespołu.

7:19

Rozdziały i streszczenia generowane automatycznie. Pełna transkrypcja nie jest publikowana — wyszukaj frazę, aby zobaczyć dopasowane fragmenty.