Domov arrow Programovanie arrow Čistý kód - Funkcie
Čistý kód - Funkcie
ImageRozhodol som sa preložiť kapitolu z knihy od autora Robert C. Martin. Kniha sa nazýva Clean Code a kapitola, ktorú som sa odhodlal prepísať do Slovenčiny má číslo 17, začína sa na strane 285, a v originále má názov "Smells and Heuristics".

Zaoberá sa niekoľkými kategóriami problémov často sa nachádzajúcich v zdrojovom kóde aplikácií. Tieto postrehy a návody na vyhnutie sa problémom sú uplatniteľné pre všetky programovacie jazyky, hoci príklady sú uvádzané v jazyku Java. No znovu podotýkam, prečítať by si ich mal každý programátor, aby sme si ušetrili do bdúcnosti bolesti hlavy pri údržbe hrozného kódu.

Kategórie, do ktorých Robert zápachy kódu podelil sú tieto: komentáre, prostredie, funkcie, mená, testy, všeobecné zápachy a zápachy konkrétne v Java kóde.

Funkcie (F)

F1: Priveľa argumentov

Funkcie by mali mať iba limitovaný počet parametrov. Žiadne argumenty pre funkciu sú najlepšia situácia, jeden argument tiež vynikajúco, dva, či tri argumenty pre funkciu sú tiež prijateľné, pokiaľ je pre ne dobrý dôvd. Pokiaľ metóda prijíma viac než tri argumenty, je to veľmi pochybné a mali by ste sa tomu snažiť vyhnúť (napríklad vytvorením zvlášť triedy, alebo rozložením metódy na niekoľko metód; alebo nejak inak refaktorovať podľa potreby).

F2: Výstupné argumenty

Výstupné argumenty sú kontraintuitívne (proti vašim bežným očakávaniam). Užívatelia vašich metód budú očakávať, že argumenty slúžia ako vstupné hodnoty, nie výstupné. Pokiaľ vaša funkcia musí zmeniť stav niečoho, nech je to objekt, na ktorom bola metóda zavolaná.

F3: Vlajočkové arumenty (flags)

True/False argumenty prehlasujú, že funkcia vykonáva viac než jednu vec. Sú zavádzajúce a mali by ste sa ich zbaviť.

F4: Mŕtve funkcie

Metódy, ktoré nikdy nie sú invokované (volané) žiadnym objektom by mali byť odstránené. Zanechávať mŕtvy kód v zdrojových súboroch je nákladné. Nebojte sa zmazať mŕtvu funkciu. Pamätajme si, že náš verzijný systém si takúto vymazanú funkciu bude pamätať naveky a kto potrebuje, si ju pokojne môže vyhrabať z histórie.



Kategórie, do ktorých Robert zápachy kódu podelil sú tieto: komentáre, prostredie, funkcie, mená, testy, všeobecné zápachy a zápachy konkrétne v Java kóde.

Posledná úprava ( Monday, 25 April 2011 )
 
< Predchádzajúca   Ďalšia >