A következő címkéjű bejegyzések mutatása: kód. Összes bejegyzés megjelenítése
A következő címkéjű bejegyzések mutatása: kód. Összes bejegyzés megjelenítése

2008. május 1., csütörtök

forráskód keresők párbaja

A forráskód keresők olyan szolgáltatások, amelyekkel más programozók kódjai közt kereshetünk a nekünk fontos szempontok szerint. Azért találták ki őket, hogy felgyorsítsák a szoftverfejlesztést. Ugyanis ha egy programozó könnyen megnézheti más kódját abban a témakörben, amiben dolgozik, abból ötleteket meríthet, kevesebbet kell agyalnia és gyorsabban halad. Open source kódokat akár teljes egészében át is vehet.
Manapság több ilyen szolgáltatást is találhatunk. Ebben a postban azt tekintem át, hogy melyik kereső támogatja leginkább a fejlesztés hatékonyabbá tételét. Ehhez az szükséges, hogy minél több nyelven, minél több kód között lehessen keresni, és a találatok a lehető legpontosabbak legyenek. A szolgáltatásokat ezek szerint hasonlítom össze.

google code searchGoogle Code: A google hozza a szokásos minőséget. Azt mondják, a megszokott felület vonzza az embereket - ha ez igaz, akkor mindenki ezt a keresőt használja. De nem csak emiatt. A keresőben szinte az összes fontosabb nyelvet kiválaszthatjuk. A kereshető kódsorok mennyisége sem elhanyagolható, valószínűleg több milliárd. Az egyszerű kereséseken kívül (amikben használhatunk reguláris kifejezéseket) bonyolultabbakat is írhatunk. Megmondhatjuk, milyen legyen a licensz (ez akkor fontos, ha a kódot fel akarjuk használni úgy, ahogy van), mi legyen a csomagnév stb. Ez a kereső ennyit tud, de ez tökéletesen elég is. Ha valaki ráadásul google rajongó is, akkor biztosan ezt választja.krugle public kódkereső
Krugle Public: A nevéből gondolom egyértelmű, hogy ez a kereső nem a teljes változat, csak az enterprise edition kicsit lebutított testvére. De hogy miben butították le, az már jó kérdés. 2,5 milliárd kódsor közt kereshetünk 50 programozási nyelven. Megadhatjuk, hogy a kód melyik részében (komment, definíció stb.) akarunk keresni, és azt is, hogy milyen projektben. Egyszóval ez a kereső mindent tud, amit kell. De itt még nincs vége: egyidejűleg kereshetünk kapcsolódó szakmai cikkek, és projektek között. Azaz többet kapunk, mint amit kértünk. A felület is tetszetős, egyszóval érdemes ezt használni. Ha nem vagy google rajongó, talán ezt fogod választani.
koders open source kódkeresőKoders: Egyik személyes kedvencem a blackducksoftware keresője. Amikor hibernate-l dolgoztam, és a hiányos dokumentáció miatt nem tudtam semmit, itt néztem meg a forráskódot. Ebben a keresőben is rengeteg nyelv között kereshetünk, a kódsorok száma majdnem 800 millió. A nyitóoldal szerint naponta 30000 programozó használja, valószínűleg nem véletlenül. Itt is megadhatjuk a licenszet, és kereshetünk a kód különböző pontjain. Viszont ehhez speciális formulákat kell használnunk. Például osztálydefinícióban kereséshez: cdef:Shape. A formulák viszont adják magukat, így egy perc alatt megtanulhatók. A kereső gyors (sebességben nem marad el a google-től), felülete egyszerű és szép.
A fentiek alapján a győztes a Krugle kereső, de mindenki döntse el magának, hogy neki melyik tetszik a legjobban. Az én személyes kedvencem a Koders (azaz nálam a google nem került a top 2-be).

2008. április 29., kedd

cyvis - szoftver komplexitás elemző

A cyvis egy Java alapú open source szoftver komplexitás elemző. A hivatalos oldalon ezt írják róla:
"CyVis collects data from java class or jar files. Once the raw data is collected, certain metrics like number of lines, statements, methods, classes and packages are obtained. Other metrics like cyclomatic complexity etc. are also be deducted."
Azaz: az alkalmazás különböző szoftver metrikákat számít ki, például: ciklomatikus komplexitás (ez aegyjából azt méri, hogy mennyire összetett a kód a vezérlési szerkezetek mélységének, egymásban ágyazásának stb. szempontjából). Ezekből aztán lehet következtetni a szoftver minőségére. A fontosabb metrikákat a kód alaptulajdonságaiból számítja ki (sorok száma, metódusok száma, metódushívások száma) a fontosabb metrikákat.

A cyvis.jar-t futtathatjuk önállóan, és kódból is. Ha önállóan futtatjuk, akkor létre kel hoznunk egy új projektet, majd ahhoz hozáadni jar, illetve class fájlokat. A cyvis ezután elvégzi az elemzért, amit grafikusan megjelenít. Az eredményben egyszerűen böngészhetünk, és a színkódok egyérteművé teszik, hol kell javítani a kódon. Pontosabban nem kell, de tanácsos, mivel a rossz metrika értékek valamilyen hibát jeleznek.
Összességében a programot megéri használni, mivel egyszerű, és érdekes tancsokat ad. Én többször is felhasználtam, és sokkal egyszerűbb. átláthatóbb és könnyebben változtatható kódot kaptam - viszonylag nagy projektben. Csak ajánlani tudom. Nálam ötös.