A tiszta kód olyan programkód, amely olvasható, könnyen érthető és karbantartható. Ennek elérése érdekében a tiszta kód az egyszerűség, átláthatóság és megfelelő struktúra elveit követi. Miért fontos a tiszta kód? A tiszta kód elengedhetetlen a hosszú távú karbantartás és fejlesztés szempontjából. Egy tiszta kódbázis segíti a csapatot a hatékony együttműködésben és csökkenti a hibák keletkezésének esélyét. - Olvashatóság: A kódot más fejlesztők könnyen megérthetik. - Egyszerűség: A bonyolultság csökkentése gyorsabb hibajavítást tesz lehetővé. - Karbanthatóság: A kód hosszú távon fenntartható és módosítható marad Olvashatóság Az olvashatóság azt jelenti, hogy a kód könnyen érthető mind a fejlesztők, mind a tesztelők számára. Ennek érdekében: - Használjunk értelmes változó -és függvényneveket - Strukturáljuk a kódot logikus blokkokra - Használjunk megfelelő indentálást (vízszintes elválasztás / igazítás) és sorhosszúságot Egyszerűség Az egyszerűség elve szerint a kódot a lehető legegyszerűbben kell megírni, miközben minden szükséges funkcionalitást megvalósít. Kerüljük: - A felesleges bonyolultságot - A fölösleges és redundáns kódrészleteket Karbantarthatóság A karbantarthatóság érdekében a kódnak modulárisnak kell lennie, és megfelelően dokumentáltnak. Ez azt jelenti, hogy a kódrészleteket könnyen újra lehet használni és módosítani. Indentálás és sorhosszúság Indentálás: Kövessük a nyelv által javasolt szabványokat (C# esetében 4 szóközzel vagy tab karakterrel igazítjuk a sor elejét). Sorhosszúság: Tartsuk a sorokat 80-100 karakter között, hogy a kód olvasható maradjon minden eszközön. Fehér terek és kommentek helyes használata Fehér terek használata Hagyjunk üres sorokat a logikai blokkok között a kód struktúrájának kiemelésére. Használjunk szóközöket az operátorok közül a kód olvashatóságának javítása érdekében. Kommentek A kommentek a kód megértését segítikm de csak akkor használjuk őket, ha valóban szükséges. A fölösleges kommentek zavarók lehetnek és csökkentik az olvashatóságot. Projekt struktúrája - Osztályokat és metóduspkat rendezzük logikus modulokba ls csomagokba. - Egy fájl egyetlen felelősséget lásson el. Függvények és metódusok tisztasága Az egytlen felelősség elve - Egy függvény vagy metódus csak egy dolgot végezzen és azt jók végezze el. Rövidség és egyszerűség - A függvények legyenek rövidek és kerüljük a túlzott összetettséget. Ha egy függvény túl hosszú, osszuk fel kisebb részekre. Refaktorálás A refaktorálás szükségessége A refaktorálás célja a kód minőségének javítása anélkül, hogy megváltoztatnánk annak viselkedését. Ez segít az olvashatóság és karbantarthatóság növelésében Gyakori refaktorálási lépések - Változók és függvények átnevezése - Redundáns kód eltávolítása - Hosszú függvények felosztása kisebbekre Kódszagok felismerése és javítása Kódszagok definíciója A kódszag olyan kódrészlet, amely potenciális problémára utal. Ezek közé tartozik: - Hosszú függvények: Túl sok mindent csinálnak - Redundancia: Ugyanaz a kód több helyen is előfordul - Túl sok paraméter: Egy függvény túl sok bemenetet igényel SOLID alapelvek alkalmazása A SOLID alapelvek segítenek az objektumorientált kód struktúrálásához: - S: Egyszeri felelősség elve - Egy osztály csak egy dolgot csináljon. - O: Nyitott zárt elve - Egy osztály legyen nyitott a bővítésre, de zárt a módosításra. - L: Liskov helyettesítési elv - Egy származtatott osztály helyettesíthető legyen az alaposztályával anélkül, hogy a program helytelenül működne. - I: Interfész-szegregációs elv - Az interfészek legyenek kisebbek és specifikusabbak, hogy az implementáló osztályok ne legyenek kénytelenek fölöseges metódusokat megvalósítani. - D: Függőség-inverzió elve - A magas szintű modulok ne függjenek alacsony szintű moduloktól, mindkettő absztrakciótól függjön.