====== Különbségek ====== A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
| Előző változat mindkét oldalon Előző változat Következő változat | Előző változat | ||
|
develop:coding_standards:general [2015. 06. 19. 09:37:29] IB Controll Kft. |
develop:coding_standards:general [2017. 05. 22. 11:30:21] (aktuális) |
||
|---|---|---|---|
| Sor 1: | Sor 1: | ||
| ====== Általános ====== | ====== Általános ====== | ||
| - | * A forráskódban szereplő sorok hossza legfeljebb **120** karakter lehet. Ha kell, sortörést mindig operátor után iktatunk be. | + | * A forráskódban szereplő **sorok hossza legfeljebb 120 karakter** lehet. Ha kell, sortörést mindig operátor után iktatunk be. |
| * Kikényszeríti a túl mély szerkezetek kikerülését. Ha elértünk 3-4 indentálási mélységet, akkor fontoljuk meg egy új függvény vagy metódus bevezetését inkább. | * Kikényszeríti a túl mély szerkezetek kikerülését. Ha elértünk 3-4 indentálási mélységet, akkor fontoljuk meg egy új függvény vagy metódus bevezetését inkább. | ||
| - | * Forráskódban használjunk angol nyelvet. | + | * Forráskódban **használjunk angol nyelvet**. |
| - | * Behúzás tab karakterrel történik, nem space karakterrel. | + | * **Behúzás tab karakterrel** történik, nem space karakterrel. |
| * Alapértelmezetten egy tab karakter 4 space karakternek felel meg, de mindenki kedve szerint beállíthatja. | * Alapértelmezetten egy tab karakter 4 space karakternek felel meg, de mindenki kedve szerint beállíthatja. | ||
| * A behúzás szintjei mindig egy tab karakterrel nőnek. | * A behúzás szintjei mindig egy tab karakterrel nőnek. | ||
| + | * A kifejezésekben szereplő operátorok köré egy-egy szóköz kerül. | ||
| + | * Kivéve a zárójel párok belső oldalai. | ||
| + | * A nyelv fenntartott szavait kövesse egy space karakter. | ||
| * Láthatóság mindig az engedékenytől halad a szigorú felé: public -> protected -> private. | * Láthatóság mindig az engedékenytől halad a szigorú felé: public -> protected -> private. | ||
| + | * Mágikus számokat mellőzzük a 0 és az 1 kivételéve. Konstansként adjuk meg. | ||
| + | <code>const int MAX_SPEED = 250</code> | ||
| + | * Lebegő pontos számokat mindig ponttal adjuk meg, a pont előtt mindig álljon számjegy. | ||
| + | <code>double num = 0.5 | ||
| + | double size = 4.0</code> | ||
| - | ===== Névadás ===== | + | ====== Névadás ====== |
| - | + | ||
| - | **Az angol nyelv használandó.** | + | |
| + | * **Az angol nyelv használandó.** | ||
| * Kerüljük a felesleges rövidítéseket, használjunk beszédes változóneveket. | * Kerüljük a felesleges rövidítéseket, használjunk beszédes változóneveket. | ||
| - | * src -> source, file -> outputFile. | + | * file -> outputFile, path -> sourcePath / destinationPath |
| * A rövidítések szónak számítanak, így adott esetben csak a kezdő betűjük írandó naggyal. | * A rövidítések szónak számítanak, így adott esetben csak a kezdő betűjük írandó naggyal. | ||
| - | <code>Html, Ip, Sql, sourceIp</code> | + | <code>ip, sql, sourceIp, htmlCode</code> |
| - | ==== Változók, függvények, metódusok ==== | + | ===== Változók, függvények, metódusok ===== |
| - | * Változók, függvények nevei a camelCase formátumot kövessék. | + | * Változók, függvények nevei a **camelCase** formátumot kövessék. |
| * Használjunk getter, setter függvényeket. | * Használjunk getter, setter függvényeket. | ||
| * Csak az legyen publikus láthatóságú ami feltétlenül szükséges. | * Csak az legyen publikus láthatóságú ami feltétlenül szükséges. | ||
| - | <code>getAddress(), isEmpty(), minHour</code> | + | * Tagváltozók nevét aláhúzás jelle (_) zárjuk. |
| + | <code>getAddress(), isEmpty(), minHour, firstYear_</code> | ||
| - | ==== Osztályok, névterek ==== | ||
| - | * Osztályok, névterek a CamelCase formátumot kövessék. | + | ===== Osztályok, névterek ===== |
| + | |||
| + | * Osztályok, névterek a **PascalCase** formátumot kövessék. | ||
| * A névtéren belül az osztályt nem kell behúzással elkülöníteni, a névtér végét kommentezéssel kell ellátni. | * A névtéren belül az osztályt nem kell behúzással elkülöníteni, a névtér végét kommentezéssel kell ellátni. | ||
| Sor 41: | Sor 50: | ||
| - | ==== Konstansok ==== | + | ===== Konstansok ===== |
| - | Konstansok nevei mind nagybetűvel, és aláhúzás jellel elválasztva írandók. | + | Konstansok nevei mind **nagybetűvel**, és **aláhúzás jellel elválasztva** írandók. |
| <code>GRAVITY, SPEED_LIMIT</code> | <code>GRAVITY, SPEED_LIMIT</code> | ||
| Sor 50: | Sor 59: | ||
| * Az egysoros utasítás blokkoknak is nyissunk zárójeleket. | * Az egysoros utasítás blokkoknak is nyissunk zárójeleket. | ||
| - | * Egy sorba csak egy utasítás kerüljön. | + | * **Egy sorba csak egy utasítás kerüljön.** |
| - | * Végtelen ciklust a **while (true)** formában használjuk. | + | * Végtelen ciklust a while (true) formában használjuk. |
| - | ===== Forrásfájlok ===== | + | ====== Forrásfájlok ====== |
| * **Minden fájlba csak egy, a vele megegyező nevű osztály kerülhet.** | * **Minden fájlba csak egy, a vele megegyező nevű osztály kerülhet.** | ||
| Sor 69: | Sor 78: | ||
| ... | ... | ||
| #endif // ifndef CHARACTER</code> | #endif // ifndef CHARACTER</code> | ||
| + | ====== Formázás ====== | ||
| - | + | Ha egy sor túl hosszú, meghaladja a 120 karaktert, tördelni kell. A törés mindig úgy történjen, hogy **az operátor a sor végére kerüljön**. | |
| - | ===== Formázás ===== | + | |
| - | + | ||
| - | Ha egy sor túl hosszú, meghaladja a 120 karakteret, tördelni kell. A törés mindig úgy történjen, hogy **az operátor a következő sor elejére kerüljön**. | + | |
| <code cpp-qt> | <code cpp-qt> | ||
| - | if(!((windowSize.height() <= screenSize.height()) && isWindowSizeHeightPositive) | + | if (!((windowSize.height() <= screenSize.height()) && isWindowSizeHeightPositive) || |
| - | || !((windowSize.width() <= screenSize.width()) && isWindowSizeWidthPositive)) | + | !((windowSize.width() <= screenSize.width()) && isWindowSizeWidthPositive)) |
| { | { | ||
| resize(QSize(450, 200)); | resize(QSize(450, 200)); | ||
| Sor 96: | Sor 103: | ||
| <code cpp> | <code cpp> | ||
| - | if (isEmpty()) { | + | if (isEmpty()) |
| + | { | ||
| cout << "Empty"; | cout << "Empty"; | ||
| } else { | } else { | ||