English       Hungarian


Szoftver konzultció

A C++ programmozási nyelv az egyik legnehezebben használható és megtanulható programozási nyelv. Nagyon sok lehetőséget biztosít, de ha a nyelv eszközeit nem megfelelő módon használjuk, abból sok igen nehezen javítható program hiba lesz. Ezért nagyon fontos, hogy egy C++ program fejlesztésén dolgozó csapat hasonló felkészültségű és összeszokott emberekből álljon, akik jól ismerik a C++ nyelvet és azokat a programozási módszereket, melyek a nyelv eszközeinek hatékony és biztonságos felhasználását biztosítják.

Hogyan lehet biztosítani, hogy a csapat tagjai valóban rendelkezzenek ezzel a tudással?

A Robot Control Software Kft. programozói nagyon sok tapasztalatot halmoztak fel az évek során programkönyvtárak, programozási stílus és módszertan formájában. Ennek a tapasztalatnak (know-how) az átadására dolgoztunk ki egy C++ programozói tanfolyamot, melynek célja, hogy a szoftver fejlesztő cégek és a saját programozó csapatunk új tagjai is elsajátíthassák az RCS Kft.-nél kifejlesztett programkönyvtárak használatát és a kialakított programozói stílust. Ez a tanfolyam most elérhető az Önök számára is.

A legtöbb szoftverfejlesztéssel foglalkozó cég működése során fölmerülnek az alábbi, vagy hasonló problémák:

A C++ programozói tanfolyam segíhet abban, hogy az Ön cége megoldást találjon ezekre a problémákra.

A C++ programozói tanfolyam célja:

  1. A különböző végzettségű és gyakorlatú programozók ismereteit kiegészíteni és egy szintre hozni. Mindenki ismerje azokat a C++ nyelvi elemeket, programozói fogásokat, módszereket és könyvtárakat, amelyeket a programok fejlesztése során használnak. Igy a programozók azonos szinten és hasonlóan fognak dolgozni, hasonló megoldásokat fognak használni, és könnyebben megértik és elfogadják a másik által írt programot.
  2. Egységes programozói stílust alakítunk ki, ami nagy mértékben megkönnyíti egy másik programozó forráskódjának olvasását, átvételét, ugyanakkor lehetővé teszi számos, gyakran elkövetett hiba elkerülését.
  3. Bemutatunk számos programozási módszert, amelyek használata egyszerűsíti a program forráskódjának karbantartását és segíti a hibák korai felismerését és javítását.
  4. Program könyvtárak és program modulok használata, amely nagymértékben növeli a programozói munka hatékonyságát.
  5. Multi-platform programozási technikák bemutatása, ami a programozók látókörének szélesítést is jelenti.

Milyen előnye származik a cégnek abból, ha dolgozói elvégzik ezt a tanfolyamot:

  1. A tanfolyam során megtanult és kidolgozott szabályok jól alkalmazhatók egy minőségbiztosítási rendszer kialakítása során.
  2. Növekszik a programozói munka hatékonysága.
  3. Kevesebb programhiba lesz és azokat hamarabb fogják megtalálni és kijavítani.
  4. Megbízhatóbb, stabilabb, könnyebben használható programok készülnek majd.
  5. Az aktuális projekt nem függ egy-két kulcsembertől, mert könnyebb lesz egy programozó munkáját valaki másnak átadni.
  6. A termékek több platformon futnak, ezzel növekszik az elérhető piaci szegmens.
  7. Csökkenthetőek a szoftverfejlesztő eszközök költségei, mert a fejlesztési munkához ingyenes termékek is használhatóak (Linux, gcc)

A tanfolyam menete

Felmérés
A felmérés célja, hogy megismerjük a hallgatók szakmai felkészültségét és gyakorlatát. Minden hallgatóval megismerkedünk egy kötetlen beszélgetés keretében és közösen megnézzük néhány, az utóbbi időben készült programjának forráskódját is.
Telepítés
A megbízó cég telephelyén és a hallgatók számítógépein installáljuk azokat a fejlesztő eszközöket, programokat és program könyvtárakat, melyekre a tanfolyam és a későbbi munka során szükség lesz.
Előadás
A felmérés eredménye, a megbízó kívánsága és a hallgatók kérdései alapján rövid, interaktív előadások keretében bemutatjuk azokat a módszereket és program könyvtárakat, amelyeket a hallgatók még nem ismernek.
Gyakorlat
A hallgatóknak néhány egyszerű példaprogramot kell megírniuk, melyek jól szemléltetik a tanult módszereket. A feladatok személyre szólóak, az eredményt közösen elemezzük.
Ellenőrzés (code review)
A hallgatók munkáját a tanfolyam befejezése után is követjük, ameddig szükséges. Ez gyakorlatilag azt jelenti, hogy átnézzük egy adott időszak alatt megírt programok forráskódját (code review), és segítünk abban, hogy a hallgatók a tanult módszereket és a programozási stílust valóban helyesen alkalmazzák.

 

Program könyvtárak

Ezeket a C++ program könyvtárakat forráskóddal, dokumentációval és példaprogramokkal együtt le lehet tölteni a www.rcs.hu web-site-ról. Az RCS Kft. teljeskörű támogatást nyújt a programkönyvtárak használatához, akkor is, ha nem az RCS Kft. fejlesztette őket, amely magában foglalja a:

Fontos, hogy csak olyan program könyvtárat használjunk, amelynek a forráskódja is elérhető.

Ime a könyvtárak listája:

Standard C++ könyvtárak
STL, IOStream
rMPL
Multi Platform Library
rLib
Egyéb
Property Library
Property és stream
FLTK
Multi platform grafikus felhasználói felület

Multi Platform programozás

Egy szoftvert sokkal szélesebb körben lehet értékesíteni, ha nem csak egy platformon használható. A multi platform programok fejlesztése azonban nem egyszerű feladat. Lehet, hogy nem is éri meg, csak akkor, ha ez nem okoz jelentős többlet költséget. A RCS Kft. által kifejlesztett módszer nagy mértékben leegyszerűsíti a multi-platform programok fejlesztését. Az rMPL és az FLTK program könyvtárak használatával lehetővé válik, hogy a program forráskódja ne tartalmazzon platform függő részeket. Az rMPL biztosítja, hogy csupán néhány környezeti változó beállításától függ, hogy mely platformra és milyen fordító programmal akarjuk a programot lefordítani.

Természetesen vannak platfrom függő program részek, de ezeket az rMPL elrejti a programozó elöl. Nagyon fontos, hogy az rMPL nem egy új felület, amit minden platformon implementálni kell. A cél az, hogy eltüntessük az egyes platformok közti különbségeket. Igy a felhasználónak a lehető legkevesebb új ismeretet kell elsajátítani az rMPL használatához.

Egységes programozási stílus kialakítása

Egy programozó team munkáját nagy mértékben segíti, ha egységes stílusban írják a program forráskódját. Másrészt a megfelelő programozási stílus áttekinthetővé teszi a programot és és lehetővé teszi, hogy eleve elkerüljünk olyan hibákat, melyeket csak a tesztelés során tudnánk kimutatni.

Az általunk kidolgozott szabályokat évek óta használjuk, és nagyon jó tapasztalataink vannak. Partnereinknek a helyi igényeknek megfelelően átalakítva át tudjuk adni ezeket a szabályokat. Nem elegendő azonban, hogy legyen egy ilyen szabálygyűjtemény! Nagyon fontos, hogy a programozók valóban használják és a saját stílusuknak érezzék ezeket a szabályokat. Ezért a tanfolyam keretében bemutatjuk és megindokoljuk, hogy mire miért van szükség, sőt a programozók munkáját figyelemmel kísérve segítünk abban is, hogy a szabályokat helyesen használják-e.

Általános és C++ programozási ismeretek

A C++ nyelvet sokan azért nem szeretik, mert "könnyen lehet benne hibás programot írni". Ez az állítás részben igaz, mert a C++ nyelv gyakorlatilag bármit megenged. Megfelelő körültekintéssel és a rendelkezésre álló eszközök következetes és helyes használatával azonban a legtöbb hiba elkerülhető. Ehhez azonban ismerni és használni kell számos programozási módszert és a nyelv eszközeit, mert ezek minden elemére szükség van, mindegyiknek megvan a maga szerepe, amelyet nagyon nehéz más eszközökkel pótolni.

Code review

Az RCS Kft. által nyújtott konzultációs szolgáltatásnak nagyon fontos eleme a visszacsatolás. Nem elégszünk meg azzal, hogy elmondjuk, mit hogyan kellene csinálni. Figyelemmel kísérjük a programozók munkáját mindaddig, amíg meggyőződünk róla, hogy a szükséges ismereteket elsajátították és helyesen használják a munkájuk során. Ez azt jelenti, hogy amíg szükséges, átnézzük a programokat és megbeszéljük a szerzőjével, hogy mit csináltunk volna másként és miért. Itt most ezt értjük code-review alatt.


[ Home | RCS | rIDE | SIMM-Sys | SC | Site-map | Help | Feedback ]

Robot Control Software Ltd. Úrbéres u. 62/A., Budapest, 1028 Hungary; Tel:+36-1 398-0200 Fax:+36-1 398-0202