← Vissza a főoldalra

A kód, amit 6 hónap múlva is érteni fogsz

Kató Attila

Van egy régi fejlesztői vicc:

„Aki ezt a kódot írta, biztos már nem dolgozik itt.”

A legrosszabb az egészben, hogy sokszor még mindig ott dolgozik.

Csak éppen te vagy az.

Hat hónappal később megnyitsz egy régi projektet.

Látsz egy 300 soros függvényt.

Öt egymásba ágyazott if-et.

Három TODO kommentet.

Egy temp2Final_v3 nevű változót.

És az első gondolatod:

„Ki írta ezt a borzalmat?”

A Git gyorsan válaszol.

You.

A memória sokkal rosszabb, mint gondolnád

Fejlesztés közben minden logikusnak tűnik.

Pontosan tudod, miért került oda az a feltétel.

Miért kellett az a workaround.

Miért nem lehetett egyszerűbben megoldani.

Hat hónappal később viszont már csak a kód marad.

A kontextus eltűnik.

Ezért nem a jelenlegi önmagadnak írsz kódot.

Hanem annak, aki fél év múlva próbálja majd megérteni.

A legfontosabb olvasó már nem is ember

Régen azt mondtuk:

„Írj kódot, amit a csapattársaid is megértenek.”

Ma ehhez hozzátennék még valamit.

Írj olyan kódot, amit az AI is könnyen megért.

Hiszen ma már naponta kérjük meg a Cursort, Copilotot vagy a ChatGPT-t arra, hogy:

  • keressen hibát,
  • refaktoráljon,
  • írjon teszteket,
  • készítsen dokumentációt,
  • vagy egészítsen ki egy meglévő funkciót.

Minél egyértelműbb a kódod szerkezete, annál jobb válaszokat kapsz.

A tiszta kód ma már nemcsak emberbarát.

AI-barát is.

A komment nem megoldás

Sokan próbálják kommentekkel megmenteni a nehezen olvasható kódot.

Pedig a komment gyakran csak tüneti kezelés.

Ha egy függvény működését fél oldalban kell elmagyarázni…

akkor valószínűleg nem a komment hiányzik.

Hanem a refaktor.

A kommenteknek nem azt kell leírniuk, mit csinál a kód.

Hanem azt, miért kellett így megoldani.

Ez az a kontextus, amit fél év múlva már biztosan nem fogsz felidézni.

Az AI nem csak kódot ír

A legtöbben generálásra használják.

Pedig szerintem sokkal nagyobb értéket ad refaktoráláskor.

Egy nehezebb fejlesztés után rendszeresen megkérem az AI-t például erre:

  • nevezze át a változókat beszédesebbre,
  • bontsa kisebb függvényekre a logikát,
  • egyszerűsítse a feltételeket,
  • keressen ismétlődő mintákat,
  • írjon hiányzó teszteket,
  • készítsen rövid dokumentációt.

A végeredmény sokszor nem gyorsabb.

Hanem egyszerűen sokkal tisztább.

A tiszta kód nem esztétika

Nem attól jó egy projekt, hogy szépen van behúzva.

Hanem attól, hogy könnyű rajta változtatni.

A szoftverek életük nagy részét nem fejlesztésben töltik.

Hanem karbantartásban.

Egy új funkció.

Egy hibajavítás.

Egy API-változás.

Egy új kolléga.

Ha minden módosítás előtt fél órát kell nyomozni, hogy mi miért működik…

akkor nem gyorsan fejlesztetek.

Csak gyorsan írtatok kódot.

A valódi cél

Nem az, hogy a kód tökéletes legyen.

Hanem az, hogy amikor fél év múlva újra megnyitod, ne azt mondd:

„Fogalmam sincs, ezt ki találta ki.”

Hanem azt:

„Értem, miért így készült. Menjünk tovább.”

A jó kód nem attól értékes, hogy ma működik.

Hanem attól, hogy holnap is könnyű továbbfejleszteni.

És ez az a tulajdonság, ami egy AI-korszakban talán még fontosabb lett, mint valaha.