Hlavní navigace

Názor k článku Cibulová architektura aneb jak nepřipravovat špagety od KarelI - Ono na papíře to vypadá krásně a je...

  • Článek je starý, nové názory již nelze přidávat.
  • 24. 1. 2020 10:44

    KarelI

    Ono na papíře to vypadá krásně a je dobré, že se začátečník dozví, že má dělat interfacy, ale realita je bohužel poněkud složitější.

    To co dělá výměnu komponenty složitou je změna kontraktu a to jak moc se aplikace na danou komponentu odkazuje. Samotný interface moc nepomůže, když je kvůli výměně třeba změnit způsob volání funkcí (parametry, pořadí, ...) a je to rozlezlé na tisíci místech. Naopak pokud mám odkazy na danou komponentu lokalizované v nějaké malé části, tak ji (pravděpodobněji) snadno vyměním i když tam ten interface nebude.

    Jinými slovy, žádná architektura nepomůže, pokud se ty špagety stejně rozlezou v aplikační nebo doménové vrstvě, na druhou stranu architektura není zas tak podstatná, pokud jsou věci oddělené a uklizené.

    Píšu to proto, že jsem v posledních letech svědkem toho, jak se dogmaticky a extrémně aplikují SOLID principy a všelijaké architektury s devastujícími dopady na aplikaci samotnou. Takže prosím všeho s mírou, dobré integrační testy a uklízet po sobě, to se mi osvědčilo nejlíp :-)