Když refaktorujete kód, vestavěné nástroje IDE ušetří hodiny

Aus Rettungsdienst-Wiki
Version vom 1. Oktober 2026, 21:00 Uhr von RobbinCrabtree (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Výkon se neměří jen na vlajkové lodi. Spusťte aplikaci na starším zařízení s omezenou pamětí a sledujte dobu spuštění, spotřebu baterie a plynulost posouvání. Zaznamenejte hodnoty před a po každé změně, jinak nepoznáte, který zásah situaci zhoršil. Testujte také přechod mezi sítěmi – z Wi-Fi na mobilní data – a chování aplikace při příchozím hovoru nebo oznámení.<br><br>Další častý problém je sdílený sta…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Výkon se neměří jen na vlajkové lodi. Spusťte aplikaci na starším zařízení s omezenou pamětí a sledujte dobu spuštění, spotřebu baterie a plynulost posouvání. Zaznamenejte hodnoty před a po každé změně, jinak nepoznáte, který zásah situaci zhoršil. Testujte také přechod mezi sítěmi – z Wi-Fi na mobilní data – a chování aplikace při příchozím hovoru nebo oznámení.

Další častý problém je sdílený stav mezi testy. Integrační testy, které si předávají data nebo běží paralelně nad stejnou databází, padají náhodně. Řešením je izolace na úrovni transakcí, schémat nebo tenantů. Každý test si připraví vlastní data a po sobě je uklidí. Když to nejde, testy musí běžet sériově, ale to je jen dočasné řešení.

Základem je přejmenování symbolů. Místo ručního hledání a nahrazování použijte funkci Rename (obvykle klávesa F2 nebo Shift+F6). IDE přejmenuje pouze skutečné výskyty v rámci rozsahu, ne řetězce v komentářích nebo v jiných modulech. Před spuštěním zkontrolujte náhled změn, který IDE zobrazí. Typická chyba: přejmenování přes prosté Find and Replace, které přepíše i texty v dokumentaci a rozbije cizí kód.

Neignorujte chybová hlášení. Podrobná chybová zpráva z databáze prozradí názvy tabulek, sloupců i typy dat a útočníkovi výrazně usnadní další postup. V produkčním prostředí proto zapněte obecné chybové stránky a podrobnosti logujte pouze na server. Totéž platí pro ladící nástroje, které nesmí být veřejně dostupné.

Nezapomeňte na podmínky, které se v laboratoři těžko simulují. Různé rychlosti sítě, přechod mezi Wi-Fi a mobilními daty, nedostatek místa v úložišti, oprávnění zamítnutá uživatelem, změna jazyka a formátu data. Právě tady vzniká nejvíc stížností. Testování není jednorázová fáze před vydáním, ale průběžná činnost, která rozhoduje o tom, zda aplikace přežije první týden v provozu.

Poslední věc, která rozhoduje o výsledku, je tón. Zpětná vazba nemá být obhajoba ani hodnocení člověka. Když někdo řekne, že něco nefunguje, není to útok. Facilitátor to musí říct nahlas, jinak se lidé začnou bránit a diskuze se změní v hádku o vině. Struktura drží emoce na uzdě jen do chvíle, kdy ji někdo začne používat jako zbraň. Proto je lepší mluvit o procesech a rozhodnutích než o lidech a jejich vlastnostech.

Změna signatury metody je další častý refaktoring. Použijte Change Signature, kde přidáte, odeberete nebo přeuspořádáte parametry. IDE upraví všechna volání, včetně těch v testech. Pozor na výchozí hodnoty a přetížené metody: náhled změn vždy projděte, protože automatické úpravy nemusí odpovídat zamýšlenému chování. Pokud si nejste jistí, udělejte změnu po menších krocích a po každém spusťte testy.

Extrakce a přesun jako rutina Extrakce metody nebo proměnné (Refactor >Extract Method/Variable) zvládne během vteřiny to, co by ručně zabralo desítky minut. Označte blok kódu, spusťte extrakci a IDE vytvoří novou metodu včetně parametrů a návratové hodnoty. Pokud extrahujete příliš mnoho najednou, vznikne metoda s deseti parametry – to je signál, že je lepší rozdělit kód na menší části. Stejně tak Move přesune třídu nebo funkci do jiného souboru a automaticky opraví všechny importy a reference.

Refaktorování často skončí jako ruční přepisování, při kterém se snadno zapomene na okrajové případy. Přitom většina moderních IDE nabízí nástroje, které stejnou práci zvládnou rychleji a bezpečněji. Klíčem je vědět, které funkce použít a kdy. Nejde o hromadné přejmenování všeho, co najdete, ale o cílené zásahy s okamžitou kontrolou.

Před každým větším refaktoringem mějte čistý stav v systému pro správu verzí. Pokud něco pokazíte, můžete se vrátit o krok zpět. Kombinujte nástroje IDE s průběžným spouštěním testů – ne až na konci. Až budete refaktoring dělat pravidelně, zjistíte, že vestavěné funkce nejsou jen zkratka, ale způsob, jak udržet kód čitelný a předvídatelný.

U rozsáhlejších úprav se vyplatí strukturované vyhledávání a nahrazování. To umí pracovat se syntaxí, ne jen s textem. Najdete tak všechny výskyty určitého vzoru, například volání metody bez kontroly návratové hodnoty, a nahradíte je bezpečně. Běžná chyba je příliš obecný vzor, který zachytí i nesouvisející kód. Vždy používejte náhled a omezujte rozsah na konkrétní adresář nebo soubor.