Bugs in Debugging
Ena stvar, ki jo boste opazili, ko se boste učili o programiranju je, da ste nagnjeni k pravično število napak in predpostavke, ki povzročajo vaš program, da: 1) ne prevede, ali 2) pripravi izhod, da ne boste pričakovali, ko se izvaja. Te težave se imenujejo hroščev, in dejanje njihovo odstranitev se imenuje razhroščevanje. Približno polovica času koli programer je preživel razhroščevanje.
boste imeli dovolj časa in priložnosti za ustvarjanje svoje lastne napake, ampak da bi dobili bolj seznanjeni z možnostmi, kaj je ustvariti nekaj. V vašem programu, poskusite brisanje enega od podpičjem na koncu vrstice in poskusite zbiranje program z javac. Prevajalnik vam bo sporočilo o napaki. To se imenuje napako prevajalnik, in boste morali odpraviti vse od njih, preden lahko izvedete svoj program. Poskusite Pravopisna napaka ime funkcije, pri čemer pa se je " {" ali odpraviti eno od uvoznih linij navaditi na različne napake prevajalnika. Ko prvič vidiš določeno vrsto prevajalnika napake je lahko neprijetno, vendar z eksperimentiranjem, kot je ta - z znanimi napakami, ki jih ustvarite na namen. - Lahko dobite seznanjeni z veliko skupnih napak
Bug, znan tudi kot izvedbi (ali doživljenjsko) Napaka se pojavi, ko se program pripravlja fine in teče, vendar potem ne proizvaja izhod ste načrtovano za to proizvodnjo. Na primer, to kodo proizvaja rdeč pravokotnik z dvema diagonalnimi črtami po njej:
g.setColor (Color.red); g.fillRect (0, 0, 200, 200); g.setColor (Color.black); g.drawLine (0, 0, 200, 200); g.drawLine (200, 0, 0, 200);Naslednja koda, na drugi strani, proizvaja samo rdeč pravokotnik (ki pokriva več kot dveh vrsticah):
g.setColor (Color .black); g.drawLine (0, 0, 200, 200); g.drawLine (200, 0, 0, 200); g.setColor (Color.red); g.fillRect (0, 0, 200, 200);Koda je skoraj popolnoma enaka, vendar pa izgleda popolnoma drugače, ko se izvaja. Če ste pričakovali, da vidite dve diagonalne črte, nato pa koda v drugem primeru vsebuje napako
Tu je še en primer:.
g.drawLine (0, 0, 200, 200); g.drawRect (0, 0, 200, 200); g.drawLine (200, 0, 0, 200);Ta koda ustvari črno predstavil škatlo in dve diagonal. Ta naslednji del kode proizvaja samo eno diagonalo:
g.drawLine (0, 0, 200, 200); g.dra