Moringa School

Follow

Aug 4, 2020 – 4 min olvasni

By Jerrie Agunya & Geoffrey Matieso

Hagyd el azt a tévhitet, hogy ismerned kell a C++ nyelvet, java ezt a keretrendszert, azt a keretrendszert stb. ahhoz, hogy sikerüljön a legjobb kódolási gyakorlattal rendelkezned. Meg kell tanulnod, hogyan ne add fel. Általában a legjobb kódolási gyakorlat eléréséhez vezető út elején a dolgok nagyon nehézzé válnak, és ez tény.”

Az, hogy a kód csak kódnak tűnik annak, aki nem ért a kódoláshoz, igaz, de néhány dolog kiemelkedik egy programozó képességeinek megítélésekor. Tehát hogyan lehet azonosítani egy jó programozót, aki a legjobb kódolási készségekkel rendelkezik? A következő alcím alatt tárgyalunk és szembeállítunk néhányat.

Kódminőség

Martin Fowler mérnök és szerző mondta:

“Bármilyen bolond írhat olyan kódot, amit a számítógép megért, a jó programozó olyan kódot ír, amit az ember megért.”

A jó programozó időt fordít a kódja dokumentálására, nagy az esélye, hogy nem érti a kódját, amikor néhány hónap múlva újra megnézi. Elégedetté teszik a csapattársaikat a kódjukkal, és nem esnek kétségbe, rossz gyakorlat, hogy olyan kódot pufogtatnak ki, amit a jövőbeli karbantarthatóságot szem előtt tartva írtak. Ez alatt azt értjük, hogy a kódot nem a kódbázis növekedésére írták, és ha egy frissítést vagy egy új funkciót kell implementálni, akkor rendetlen, hibákkal teli és törött lesz.

A kód minősége fontos a skálázhatóság szempontjából, a kódnak megfelelően strukturáltnak, rendezettnek, jól dokumentáltnak és megfelelő formázással rendelkezőnek kell lennie, tesztvezéreltre kell épülnie a sebezhetőségek elkerülése érdekében.

A gyors és rendetlen kód gyors, igen! De gondoljunk csak bele, hogy a későbbiekben hány órát töltene el ennek a kódnak a hibakeresése.

Előfeltételek.

A kódolás megkezdése előtt minden szükséges előfeltételt teljesíteni kell, hogy szilárd alapot biztosítson a kódoláshoz. Ezek közé tartozik az életciklus, az architektúra, a tervezés és a programozási nyelv kiválasztása. A szoftverfejlesztési módszertan segít a projekt életciklusának strukturálásában, tervezésében és ellenőrzésében. A szoftverarchitektúra határozza meg, hogy mit kell elvégezni, és azt melyik programkomponens fogja elvégezni. Hatékonyan meghatározza a különböző programok közötti interfészt, ha a szoftverrendszer sok programot tartalmaz.

Az architektúra lehetővé teszi más érdekeltek számára is, hogy ellenőrizzék a projekt követelményeit. A szoftverfejlesztési tervezésnek elég részletesnek kell lennie ahhoz, hogy jó útmutatást nyújtson a tényleges kódoláshoz. Lehetővé teszi az építészeti tervezésben elhallgatott részletek kitöltését. A különböző programozási nyelvek a probléma különböző szempontjaira alkalmasak. A programozónak tisztában kell lennie a használt nyelv sajátos erősségeivel és gyengeségeivel. A legjobb nyelv kiválasztásához meg kell érteni a problémát és a kapcsolódó programozási követelményeket. A legjobb nyelv kiválasztása a követelmények listája alapján történik.

Tartsuk egyszerűnek a kódot.

A kódcsoportosítás lehetővé teszi néhány sornyi kód használatát, a feladatokat külön kódblokkokban tartva. Egy egyszerű dolog eléréséhez szükséges bonyolult logikát a minimumra kell szorítani, mivel a kódot a jövőben egy másik programozó módosíthatja. A kód kisebb mértékű egyszerűsítése javítja a termelékenységet, csökkenti a görgetési gesztusokat és a szem megerőltetését. Az egyes kódblokkok elejére tett megjegyzés szintén a vizuális elkülönítést hangsúlyozza.

A programozóknak a projekttől függően következetes elnevezési sémát és behúzást kell használniuk. A neveknek szóhatárokkal, azaz camelCase vagy aláhúzással kell rendelkezniük. A DRY (Don’t Repeat Yourself) elvet minden kódban fenn kell tartani, mivel a legtöbb alkalmazás ismétlődő feladatokat automatizál. A programozónak kerülnie kell a mélyen egymásba ágyazott kódokat és korlátozni kell a sorok hosszát. A kód egyszerűsége javítja az olvashatóságot.

Portability.

A programozóknak paraméterezniük kell a változókat és konfigurálniuk kell őket az alkalmazáson kívüli tárhelykörnyezethez. Ez magában foglalhat egy alkalmazáskiszolgálót vagy adatbázist. A programkód nem tartalmazhat olyan környezeti paraméterekre utaló szó szerinti értékeket, mint például abszolút fájlútvonalak, fájlnevek, felhasználónevek, hosztnevek és IP-címek. Ez nem teszi lehetővé az alkalmazás futtatását egy más kialakítású hoszton.

Újrafelhasználhatóság.

Néhány szoftverprojekt egy meglévő alapvonalból indul, amely a projektet a korábbi verziójában tartalmazza. A projekttől függően sok meglévő szoftvermodul és komponens újrafelhasználásra kerül. Ez segít csökkenteni a fejlesztési költségeket és időt, ha az összetevők már tesztelve vannak. Így nő a szoftverprojekt határidőre történő átadásának valószínűsége.

A kód hibakeresése és a hibák kijavítása.

A programozóknak meg kell írniuk a teljes kódot, és csak ezután kell elkezdeniük a hibakeresést és a hibák ellenőrzését, nem pedig a teljes programot. Ez a megközelítés időt takarít meg, mivel az ember végül nem pazarolja az idejét a hibák felkutatására.

Tesztelés.

A kódolás megkezdése előtt az alkalmazás tervezése és kódolása során megtervezik és kidolgozzák a teszteseteket. Az egyes modulok egységtesztjeit és a webszolgáltatások és alkalmazások funkcionális tesztjeit a hibakereséssel együtt alkalmazzák.

Végeredményben a legjobb kódolási gyakorlat lehetővé teszi, hogy Ön, mint fejlesztő lássa, milyen értéket tud letenni az asztalra. Különösen azt, hogy mit tudsz, amit mások nem; nem azt, hogy “olyan okos vagy, mint a többi fejlesztő”, hanem azt, hogy egyedi vagy, és kihozod magadból a benned rejlő belső technikust.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.