Alapok

Függvény és Változó nevek

Sokan lényegtelennek tartják az egyes függvények vagy változók precíz elnevezését a mindennapi munka során, azonban szerintem ez egy nagyon fontos pont. Funkcionalitás tekintetében lehet, hogy nem tűnik olyan lényegesnek mindez, azonban a kód karbantarthatóságát tekintve ez az egyik legfontosabb szempont.

 

Azért egy nehéz kérdés ez, mert a fejlesztőnek, aki épp implementálja az adott függvényt, annak triviális, hogy egy változó épp mikor mit jelent. Ezért szinte fel sem tűnik neki, hogy 2 hét vagy 2 év múlva mennyire értelmezhetetlen is lesz majd a kód. Sajnos sokszor láttam már ilyet illetve nekem is kellett már ilyen minőségű kódot megértenem. Nem egy nagy öröm ez, remélem nektek nem kell ezt átélni, azonban sajnos az eddigi tapasztalatom nem ezt mutatja. Nézzük meg az elméletet, hogy mikor ideális szerintem egy függvény vagy egy publikus, globális változó elnevezése:

  1. A programozás nyelve az angol. Angol a függvénynév, a változó, a komment, minden.
  2. A név hierarchia szerint épül fel (azért ezt nem érdemes túlzásban vinni, 1-2, nagyon maximum 3 szint bőven elegendő)
  3. A hierarchiai szintek általában rövidítve szerepelnek
  4. Az utolsó rész legyen a függvény vagy változó célja. Ez általában egy szabadabb rész, tetszőleges, rövid! tartalommal
  5. A függvény vagy változó végén postfix-ként szerepel a típus megnevezés
  6. Egybeírás esetén minden új szó nagybetűvel kezdődik
  7. Elválasztás esetén az elválasztó karakter az alul vonás „_”

 

A fenti szabályrendszert én mindig függvényekre és publikus, globális változókra alkalmazom. A függvény lokális változóknak és a függvény paramétereknek az elnevezésében általában nem használok hierarchia szinteket, ennyiben egyszerűsödik a dolog.

 

Nézzünk egy jó példát egy C függvényre, ami 3 számot tud összeadni:

int Pti_SumOfThreeNumbers_s16(int NumberOne_s16, int NumberTwo_s16, int NumberThree_s16);

 

Egy függvény ami megjeleníti az eredményt:

void Pti_PrintResult(int Result_s16)

 

Érdemes nagyon odafigyelni az elnevezésekre, mert ha valaki belenéz az implementációnkba, akkor ez az első dolog amit meglát. Fontos, hogy könnyen és gyorsan meg lehessen érteni a forráskódunkat, ellenkező esetben mindenkitől sokkal több időt rabol el ez a feladat mint amennyit feltétlenül szükséges lenne és akaratlanul is ellenszenvet válthatunk ki másokban. A mai komplexitású SW-ekben pedig a mindennapi munka része, hogy a kollégáink által írt kódot kell tudnunk megérteni. A problémákat, összetűzéseket azonban egy kicsi odafigyeléssel el lehet kerülni.

 

Az egyik nagyon zavaró probléma, amikor az indexelésekhez használt változókat nem nevezik el rendesen. Én az ilyen jellegű megnevezéseket sohasem fogadom el:

unsigned char i;

 

A minimum amit elvárok mindenkitől, hogy:

/** Cycle index */
unsigned char index_u8 = 0;

 

A másik amit soha senkitől nem fogadok el, ha nem az angol nyelvet használja programozáshoz. A programozás nyelve angol és a minimum elvárás, hogy mindenki legalább közép szinten beszéljen és írjon angolul. Sőt, általában az angol mellett illik ismerni legalább hallomás szinten a német vagy francia nyelvet is. Ez főleg azért is igaz, mert a magyar piac elég picike, ezért bármelyik komolyabb informatikai cégnek külföldiek a vevői.

 

Nézzünk egy példát publikus változóra Java nyelven ami a téglalap egyik illetve másik oldalának hosszát tartalmazza:

public unsigned char pti_rectangle_lengthOfEdgeA_u8 = 0;

public unsigned char pti_rectangle_lenghtOfEdgeB_u8 = 0;

  

Egy szó mint száz, mindig legyünk igényesek a saját forráskódunkkal kapcsolatban illetve olyan munkát várjunk el saját magunktól, mint amit másoktól is elvárunk. A függvények és változók elnevezéseit részletesen átbeszéljük a Java Tanfolyamon és gyakoroljuk is a feladatokban.

Bajor Tamás - Programozz Te Is!

Hello, Bajor Tamás vagyok, a Programozz Te Is oldal alapítója és oktatója. Kösz, hogy itt vagy és éppen az én cikkem olvasására fordítod a drága idődet! Azért dolgozom minden nap, hogy neked segítsek a programozás világában minél profibban elmélyülni. A cikkek egyetlen írójaként rengeteg munkát és energiát fektetek mind az oldalba, mind pedig az oktatásba!

 

Arra kérlek, ha tetszett cikk amit olvastál vagy szívesen veszed az ingyenes anyagokat akkor dobj egy Like-ot a Facebook-on, ezzel is támogatva a munkámat. Ez egy apró kattintás neked, de hatalmas segítség nekem!