10 leggyakoribb hibák java-programozók

10 leggyakoribb hibák java-programozók

Milyen hibákat nagyobb valószínűséggel fordulnak elő ezek az új programozási? Talán mindig megzavarja az egyenlőség (==) értékadó (=), vagy a . Alternatív megoldásként ezek lehetnek használja a rossz ciklus szeparátorok (az (int i = 0, i <5, i++) )?

Ahhoz, hogy erre a kérdésre válaszolni, a kutatók megvizsgálták a hibák több mint 250 000 Java-kezdők az egész világon. Egy nagy mennyiségű adatot (a forráskód több mint 37 millió összeállítások, hogy pontos legyek), hogy azonosították a leggyakoribb hibákat hallgatók először vizsgálták a Java. Azt is megállapították, hogy mennyi ideig tartott, hogy tanulmányozza a hibákat. Az eredmény megdöbbentő volt.

A Blackbox adatgyűjtés projekt

Tanulás egy új programozási nyelv - mindig kihívást jelent, mert akkor meg kell tanulni, hogy kifejezzék összetett gondolatok segítségével korlátozott, formális nyelvtan. Természetesen sok kezdő hibázik a programozás során. Ahhoz, hogy némi fényt, milyen hibákat gyakran újonnan, a kutatók a University of Kent (UK) vizsgálta, hogy a kód lett lefordítva közel 265.000 diákok szerte a világon.

A projekt neve Blackbox adatgyűjtés alapján BlueJ, ingyenes Java IDE, kifejezetten kezdőknek. BlueJ igyekszik korlátok megszüntetése siker kezdőknek, például, kiemelve az elején és végén a kód blokk. Ez megkönnyíti a hallgatók feldolgozni vizuális átvizsgálja a kódot extra fogszabályozó. Másik jellemzője az IDE - lehetséges, hogy ellenőrizze a tárgy közvetlenül a futás során. Így segít megérteni az elveket a program, valamint a hibakeresés.

10 leggyakoribb hiba az új Java-programozók

AlTadmri és Brown voltak meglepve tapasztalta, hogy a hibákat, amelyeket a szakértők és a tanárok tartják a leggyakoribb, ezek tényleg nem.

Ez lehet egy veszélyes tendencia, mondták, mert a legtöbb ilyen hibák borítja és kedvelt még a tankönyvekben.

C. Kiegyensúlyozatlan zárójelben, fogszabályozó vagy idézőjelbe, valamint ezeknek a használata karakterek alternatív Például: while (a == 0].

I. Calling módszerek érvénytelen argumentum típusú vagy érveket, például: list.get ( „ABC”).

O. A vezérlő áramlási lehet elérni a végén a nem-void eljárás nélkül vissza, például:

A. zavartság értékadó operátor (=) és összehasonlítása (==), például: ha (a = b).

N. figyelmen kívül hagyja vagy elöntve a visszatérési értéke a módszer a nem-void visszatérési típusú, például: myObject.toString (); .

B. A == helyett .equals összehasonlítani szálakat.

M. Egy híváskísérlet nem statikus módszerrel úgy, hogy ha ez egy statikus módszerrel, például: MyClass.toString (); .

R. Próbálok osztály végrehajtani a felület, de nem hajtották végre az összes szükséges módszerek, mint például: Y osztályú végrehajtja ActionListener <> .

P. hívás típusa paraméterek hívás esetén a módszer, például: myObject.foo (int x, s karakterlánc); .

E. helytelen elhelyezése vesszőt feltételek esetén. valamint hurkok és közben. Például: ha (a == b); vissza 6; .

A leggyakoribb hiba, - a C (elfelejtett zárójelben hibákat elrendezése) - pontosan mit próbál ellenállni a BlueJ, használja a háttérvilágítást. Ez a következtetés annak a jele lehet, hogy a hiba a C típusú lesz még nagyobb valószínűséggel fordul elő az IDE, ami nem nyújt eszközöket hibakeresés.

Meglepő módon, a következő hibák nem szerepelnek a top 10:

D. zavaron operátorok „rövidzárat” ( és || ) És a hagyományos logika szereplők ( és | ).

J. hiánya után zárójelben hív, például: myObject.toString; .

Q. hozzárendelési változó érték egy típusú összeegyeztethetetlen a változó típusát, például: int x = myObject.toString (); .

F. Hibás szeparátorok ciklus (helyett a használata egy vessző pontosvesszővel), például: az (int i = 0, i <6, i++) .

H. A kulcsszavak a változó nevek és technikák, például: int új; .

Meddig tart a vizsgálat a hibáiból

Ezen túlmenően, amikor Brown és AlTadmri vizsgálták, hogy mennyi ideig tart a diákok hibát javít, világossá vált, hogy a leggyakoribb hibák (C) is az egyik bystronahodimyh. Egyéb hibák nehezebb megtalálni. Ezek közül a hibák már zavart a szolgáltatók között és | vagy és || (Hiba D), használata == helyett .equals összeh húrok (hiba B) és eldobja vagy figyelmen kívül hagyja a visszaadott értékeket a módszer a nem-void visszatérési típusú (hiba N). Ezek észrevétlen maradt több mint 1000 másodperc (amely után a követés nem folytatódik), vagy nem található meg minden elveszett.

Medián mutató aránya-időkorrekciós (idő-rögzíteni), az alábbiakban mutatjuk be.

10 leggyakoribb hibák java-programozók

Kapcsolódó cikkek