Docker a desktop app
Často počujeme, že Docker (kontajnerizácia) a mikroservisy nie sú vhodné pre vývoj desktopových aplikácií. Argumentom je, že aplikácie sú vytvorené pre Systém Windows, ktorý Docker nepodporuje.
Tieto argumenty by sme chceli vyvrátiť.
Kontajnerizácia a mikroservisy sú vhodné na tieto účely, ale podliehajú určitým postupom.
Aplikácie, ktoré sa vyvíjajú už mnoho rokov, niekedy aj desiatky, sa časom stávajú zastaranými a je potrebné ich modernizovať. Tu vám kontajnerizácia môže veľmi pomôcť.
Aktuálny stav:
- Nízka rýchlosť - Výpočty sa konajú v sekcii klienta a dáta zahlcujú linku do databáze.
- Ovládanie cez terminálový server - vzdialenú pracovnú plochu alebo konzolu.
- Nabaľovanie kódu v priebehu rokov.
- Zmena technológie znamená úplný prepis aplikácie.
- Duplicita kódu pri súčasnom behu webovej a desktopovej aplikácie.
- Úprava v jednom module aplikácie môže spôsobiť zlyhanie celej aplikácie alebo problémy inde.
- Často ho vyvíja jeden vývojár alebo úzko spolupracujúci tím.
- Komplexné zapracovanie a pochopenie aplikácie pre nových vývojárov.
- Dvojvrstvová architektúra
S použitím kontajnerizácie:
- Vysoká rýchlosť - výpočty sa konajú na serverovej infraštruktúre.
- Pripojenie akéhokoľvek používateľského prostredia (mobilného, webového, desktopového).
- Jednoduché úpravy a zmeny samotných funkcií.
- Schopnosť vykonávať podrobné a nezávislé zmeny pre špecifické funkcie.
- Klientská aplikácia je len používateľské rozhranie bez výpočtov odkazujúcich na funkcie v sekcii servera.
- Úprava v jednom module nemá vplyv na kód iných nezávislých modulov.
- Nezávislé tímy a vývojári pre klienta aj pododdiely aplikácie.
- Jednoduchosť a jasnosť kódov nezávislého modulov.
- Trojvrstvová architektúra
Schéma – dvojvrstevná aplikácia
Schéma – trojvrstevná aplikácia