Webalkalmazás-architektúra alapjai
Hogyan bonts rétegekre egy webalkalmazást úgy, hogy érthető, tesztelhető és bővíthető maradjon? UI, domain logika, adat és integrációk.
Röviden
Architektúra alatt nem azt értjük, hogy hány diagramod van, hanem hogy hol vannak a felelősségi határok és milyen irányban függnek egymástól a részek. Jó felépítésnél egy üzleti szabály nem szóródik szét öt UI-komponens, két API route és három adatbázis-trigger között indokolatlanul.
Mit jelent a webalkalmazás-architektúra alapjai?
Architektúra alatt nem azt értjük, hogy hány diagramod van, hanem hogy hol vannak a felelősségi határok és milyen irányban függnek egymástól a részek. Jó felépítésnél egy üzleti szabály nem szóródik szét öt UI-komponens, két API route és három adatbázis-trigger között indokolatlanul.
Tiszta felelősségek
01
UI
02
Use case
03
Domain
04
Data access
05
Integrations
Hogyan működik a gyakorlatban?
Hasznos rétegek lehetnek: prezentáció, alkalmazási/use-case logika, domain szabályok, adat-hozzáférés és külső integrációk. Kis projektben ezek lehetnek egy kódbázis moduljai; nem kell rögtön microservice.
- Modulhatár legyen üzleti felelősséghez kötve.
- Külső szolgáltatásnak legyen jól definiált adaptere.
- Adatbázis séma és UI ne legyen fölöslegesen 1:1-ben összekötve.
- Observability és hibakezelés legyen keresztmetszeti terv, ne utólagos toldás.
Gyakorlati fejlesztői szemlélet
A legegyszerűbb architektúrát válaszd, ami a jelenlegi problémát tisztán oldja meg és hagy ésszerű növekedési utat. Egy jól strukturált monolit gyakran jobb kiindulópont, mint korai distributed complexity.
Gyakori hibák és félreértések
- Microservice-t választani pusztán modernitás miatt.
- Minden absztrakciót előre létrehozni hipotetikus jövőbeli igényre.
- Üzleti logikát UI event handlerekbe temetni.
Források és szabványok
A technikai részletekhez elsődleges szabványokat és karbantartott hivatalos dokumentációt használok. Frameworkök, böngészők és webes API-k idővel változhatnak, ezért implementálás előtt mindig ellenőrizd az aktuális dokumentációt is.
Kapcsolódó ByBence Academy