C# code review a refactoring 1. díl

Ondřej Janáček       19. 9. 2013       C#, Optimalizace       5205 zobrazení

V tomto díle vás seznámím s pojmy „code review“ a „refactoring“, zmíním jejich základní pravidla. V následujících několika dílech nové série článků pak uvedu a rozeberu nové konstrukce jazyka, které dělají kód čitelnější, snazší k údržbě, a také méně náchylný k chybám.

Code review je aktivita, při níž váš kód čte někdo jiný za účelem odhalení nejen potencionálních chyb, ale také konstrukcí kódu, které by mohly způsobit některé z výše uvedených nežádoucích vlastností. Můžete si jej dělat sami, ale zpravidla je lepší nápad poprosit někoho jiného, kdo s vaším kódem ještě nepřišel do styku. Zvýší se tak šance, že se objeví něco, co vy přehlížíte. Máte-li v týmu někoho zkušenějšího, nebojte se jej o code review požádat.

Refactoringem se poté rozumí úprava kódu vámi nebo někým zkušenějším, ve smyslu odstranění nebo alespoň minimalizovaní těchto vlastností. Refactoring by za žádných okolností neměl (ne, že by se to nestávalo) měnit funkcionalitu aplikace. V případě, že děláte refactoring a používáte nějaký verzovací systém, je obecně dobrý nápad vytvořit si branch a dělat to v ní. Rozhodně nedoporučuji refactorovat přímo trunk. Následující seznam jmenuje některé povolené zásahy do kódu v rámci refactoringu:

  • přejmenování (např. třídy, metody, ...)
  • úprava struktury kódu (např. mezery, regiony, pořadí členů třídy, ...)
  • změna zodpovědností (např. z objektu na objekt, v rámci objektu, ...)
  • optimalizace algoritmu (chování na venek zůstane stejné)
  • použití chytřejších konstrukcí (o nich bude tento seriál)

Při refactoringu mějte na paměti, že měnit veřejné API zpravidla není moc dobrý nápad, nejste-li si úplně jisti, kdo všechno ho využívá.

Visual Studio je při refactoringu mírně nápomocné nástroji dostupnými přes kliknutí pravého tlačítka v kódu (znázorněno na obrázku) anebo přes spodní část menu Edit, submenu Advanced, IntelliSense a Refactoring. Pomocí těchto nástrojů lze snadno a rychle měnit hlavně strukturu kódu.

intellisense

Existují také různé nástroje, které vás budou nutit psát pěkný kód, z nichž nejznámější je bezesporu ReSharper (http://www.jetbrains.com/resharper/), který osobně nepoužívám, protože nemám rád, když mi někdo „stojí za zády“ při vývoji.

Máme za sebou stručný úvod do code review a refactoringu. V příštím díle se můžete těšit na první dávku chytrých konstrukcí C#, konkrétně z verze 3.0.

 

hodnocení článku

0       Hodnotit mohou jen registrované uživatelé.

 

Nový příspěvek

 

Příspěvky zaslané pod tento článek se neobjeví hned, ale až po schválení administrátorem.

vb.net

Článek šel pěkně zobecnit i pro VB.NET. Rozdíl tam není žádný.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Šel, ale zase tak moc zaměřený na C# zrovna není. Další díly nicméně už budou a protože ve VB.NET vůbec nedělám, tak raději budu psát o věcech, které dobře znám, než abych nevědomě mistifikoval čtenáře.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.

Nyní zakládáte pod článkem nové diskusní vlákno.
Pokud chcete reagovat na jiný příspěvek, klikněte na tlačítko "Odpovědět" u některého diskusního příspěvku.

Nyní odpovídáte na příspěvek pod článkem. Nebo chcete raději založit nové vlákno?

 

  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

Příspěvky zaslané pod tento článek se neobjeví hned, ale až po schválení administrátorem.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback