Jak udržujeme aplikace stále jako nové
29.09.2025
Pokud není aplikacím věnována náležitá péče, v průběhu času nevyhnutelně zastarávají. Takové aplikace pak přinášejí řadu menších i větších problémů. Ať je to nemoderní vzhled, technická zastaralost nebo ukončení podpory a dodávek bezpečnostních záplat ze strany dodavatelů použitých platforem a knihoven. Vývojové cykly a období podpory frontendových knihoven i serverových platforem se navíc postupně zkracují.
Při provozování aplikací na míru příliš často vládne přístup v průběhu jejich života vedle drobného rozvoje pouze opravovat chyby. To za nějaký čas obvykle vede k čím dál náročnější údržbě a později k nákladné nutnosti vytvořit aplikaci od základu novou.
Daleko lepším přístupem podle mě je udržovat aplikace průběžně aktuální. S novými verzemi frontendových knihoven budou mít stále moderní vzhled a možnost rozšířit je o nejnovější vychytávky. Aktuální serverová platforma zase zajistí lepší dlouhodobou bezpečnost a udržitelnost. I u několik let staré aplikace pak nemusí být ani na vzhledu ani v jejím kódu poznat že nebyla právě čerstvě vytvořená.
O aktualizaci verzí všech knihoven se u nás stará automatizovaný hlídač jménem Renovate. Ten se přímočaře integruje s repozitáři kódu na GitHubu a hlídá aktuálnost jak frontendových (Javascript) tak i backendových (Java) knihoven.
A jak si poradíme, když nová verze nějaké knihovny znamená nutnost úprav v kódu? U javascriptových částí aplikace s tím pomáhá nástroj Codemod. Některé knihovny dodávají se svými novými verzemi i skripty pro tento nástroj usnadňující upgrade. Na zbývající úpravy pak vytvoříme skripty vlastní, které můžeme použít napříč všemi našimi aplikacemi.
V serverových částech aplikací postavených na Spring Boot udělá obdobnou službu nástroj OpenRewrite. S tvorbou vlastních skriptů na úpravu kódu pro oba nástroje nám, stejně jako při samotné tvorbě aplikací, pomáhá generativní AI.
Detailní popis použití těchto tří nástrojů pro aktualizaci aplikací Vám přinesou následující příspěvky. Jako první v řadě popíšu nastavení Renovate nad GitHub repozitáři a jeho schopnosti.
A co vy? Přišel za vámi někdy systémový správce s tím že Vaše aplikace je už bezpečnostní riziko? Měli jste problém sehnat někoho, kdo by ve Vaší aplikaci byl ochotný udělat úpravy?
Zpět