Refaktoring je úprava kódu, ktorá zlepší jeho štruktúru a nezmení, čo softvér robí. Refaktoring, alebo prepis od nuly, je rozhodnutie o tom, koľko mesiacov roadmapy ste ochotní zastaviť. Väčšinou vyhrá refaktoring po malých krokoch, lebo produkt počas neho ďalej zarába.
Prepis od nuly dáva zmysel v troch prípadoch: kód robí nesprávnu vec, nevlastníte ho, alebo stojí na technológii bez podpory. Nižšie je rozhodovacia tabuľka a postup, ako refaktorovať bez zastavenia roadmapy.
AI dnes píše všetok náš kód a za výsledok ručí senior. Filip predtým roky vyvíjal SaaS, ktorý denne používalo 60 000+ ľudí. Ani raz sa neprepisoval od nuly. Menil sa malými zmenami cez review, priamo v živom produkte.
Prečo je veľký prepis takmer vždy drahší, ako sa zdá?
Prepis vyzerá čisto, lebo nový kód ešte nemá históriu. Tú históriu však potrebujete. Za každou čudnou podmienkou v starom kóde býva niečia reklamácia.
Najčastejšie dôvody, prečo sa prepis predraží:
Prepis od nuly
Stratíte opravy. Starý kód obsahuje roky drobných opráv a zákazníci chyby nájdu znova.
Platíte dva systémy. Kým prepis nie je hotový, starý treba udržiavať a rozvíjať.
Roadmapa stojí. Obchod čaká na funkcie a nový systém na začiatku vie menej ako starý.
Cieľ uteká. Kým prepis dobehne starý systém, ten má nové funkcie.
Tieto náklady nemá
Refaktoring po krokoch
Produkt beží a ďalej zarába.
Zákazníci si nič nevšimnú.
Každá zmena sa dá vrátiť.
Nové funkcie idú popri refaktoringu.
Kedy refaktorovať a kedy prepísať: rozhodovacia tabuľka
Situácia
Čo odporúčame
Prečo
Kód robí správnu vec, ale ťažko sa mení
Refaktoring
Správanie chcete zachovať, meníte len tvar kódu.
Chýbajú testy
Najprv testy, potom refaktoring
Bez testov neviete, čo ste pokazili.
Jedna časť brzdí všetko ostatné
Nahradiť túto časť, zvyšok refaktorovať
Jeden modul za stabilným rozhraním je zvládnuteľný.
Kód robí nesprávnu vec, biznis sa zmenil
Prepísať túto časť
Nemá zmysel zachovávať správanie, ktoré nechcete.
Kód nevlastníte alebo k nemu nemáte prístup
Nový systém a presun dát
Nie je čo refaktorovať.
Technológia nemá podporu ani bezpečnostné záplaty
Postupná migrácia
Presúvajte po častiach, nie všetko naraz.
Nikto v tíme kódu nerozumie
Najprv pochopiť, potom rozhodnúť
Nepochopený kód nie je dôvod na prepis. Je to dôvod na testy.
Pozor na posledný riadok. „Nikto tomu nerozumie“ je najčastejší argument za prepis. Zároveň najhorší. Nový tím, ktorý starému kódu nerozumie, ho prepíše bez opráv, ktoré v ňom sú.
Prepis býva aj najjednoduchší upsell. Pri audite produktu jedného zakladateľa sa ponúkali monorepo a prepis backendu do TypeScriptu. Napísali sme opak: repozitáre sú v poriadku, TypeScript pridávajte po moduloch a začnite prihlásením a právami.
Ako refaktorovať bez zastavenia roadmapy?
01
Testy na súčasné správanie
Najprv opíšte, čo systém robí dnes, aj s chybami. Až potom meňte.
02
Malé kroky v bežnom toku
Žiadna vetva, ktorá sa mesiac nezlúči. Každá zmena prejde review a CI.
03
Refaktorujte tam, kde robíte funkciu
Kód, na ktorý mesiac nikto nesiahne, môže počkať.
04
Novú časť stavajte vedľa starej
Prepínajte postupne, kým starú nebudete môcť vypnúť.
05
CI, ktoré naozaj zastaví zlú zmenu
Zelená fajka bez testov nič nedokazuje.
AI tu robí to, čo je pomalé a nudné. Testy na existujúce správanie, presuny kódu, premenovania. Senior rozhoduje, čo sa mení a v akom poradí. Aké pravidlá na to AI dávame, opisujeme v článku Pravidlá pre AI kód v tíme.
Keď máš testy, refaktoring ide ľahko.
Filip Papranec
zakladateľ Digitaliko
Bez testov a review vám AI dlh len zrýchli. Preto hovoríme, že agent je model plus rámec. Rámec je to, čo zlú zmenu zastaví.
Kedy je prepis od nuly správna voľba?
Keď kód nevlastníte. Ak pôvodný systém nepatrí vám, nie je čo refaktorovať: postaví sa nový a dáta sa presunú.
Aj pri prepise platí rovnaké poradie. Najprv dáta a pochopenie, čo systém naozaj robí. Potom obrazovka po obrazovke, nie všetko v jeden deň.
Pred rozhodnutím si prejdite šesť bodov. Zaškrtnite, čo o vašom systéme platí:
Najviac váži štvrtý bod. Ak kód robí správnu vec, len zle, refaktorujte.
Kedy to neodporúčame
Máte seniora, ktorý systém pozná a má naň čas. Refaktorujte sami. Tabuľka vyššie vám stačí.
Systém sa o pár mesiacov vypína. Neinvestujte do kódu, ktorý končí. Investujte do presunu dát.
Chcete rozhodnúť s niekým, kto to robí denne?
Senior sa zapojí do vášho repozitára a pull requestov od prvého týždňa. Najprv testy, potom zmeny po malých krokoch a roadmapa beží ďalej. Takto pracujeme ako externý vývojár pre produktový tím.
Napíšte nám, ktorá časť kódu vás brzdí. Ozveme sa do dvoch pracovných dní a spolu vyberieme, čo vyriešime ako prvé.
Refaktorujte, keď kód robí správnu vec, ale ťažko sa mení. Prepíšte, keď robí nesprávnu vec, kód nevlastníte alebo technológia stratila podporu. Aj vtedy prepisujte po častiach, nie naraz.
Dá sa refaktorovať bez testov?
Dá, ale je to hazard. Najprv napíšte testy na súčasné správanie, aj s jeho chybami. Až potom meňte kód. Bez testov sa o chybe dozviete od zákazníka.
Ako dlho trvá refaktoring?
Nemá pevný koniec a to je v poriadku. Robí sa priebežne v bežných pull requestoch, tam, kde práve pracujete. Samostatný refaktoringový projekt na mesiace sa väčšinou nedokončí.
Pomôže AI s refaktoringom?
Áno, pri písaní testov, presunoch kódu a premenovaniach. Rozhodnutie, čo meniť a v akom poradí, ostáva na seniorovi. Bez testov a review AI chyby len zrýchli.
Opýtajte sa AI na tento článok
AI pri odpovedi využije aj naše ďalšie články a skúsenosti z reálnych projektov.
Claude Code pricing podľa verejného cenníka Anthropicu (október 2026): Pro, Max, miesta v Team pláne, Enterprise a API tokeny. Čo sedí vývojárom, na čom beží AI agent a reviewer v CI a aké poistky zastavia agenta na pozadí, aby neminul rozpočet.
Vercel sme nenahradili, prácu sme rozdelili. Next.js weby ostávajú na Verceli, nové aplikácie bežia na Cloudflare Workers a D1, deklarované v TypeScripte cez Alchemy. Ceny so zdrojmi, naša konfigurácia a blokovaný deploy od AI agenta.
Better Auth vs Clerk sa rozhoduje podľa toho, kde žijú vaši používatelia a session. Z NextAuth sme v nových aplikáciách prešli na Better Auth a Clerk sme si nevybrali. Naša reálna konfigurácia, pluginy v produkcii, cenník Clerku a kedy je Clerk lepšia voľba.