Hvernig get ég útskýrt muninn á villu og undantekningu fyrir einstakling sem er ekki góður í forritun?


svara 1:

Svona ímyndaði ég mér muninn á villu og undantekningu.

Villa:

Hér ert þú að reyna að keyra forritið þitt, en því miður, af einhverjum ástæðum, kastar herra umhverfið stórum steini (galla) á þig.

Svo ímyndaðu þér að ef þú reynir að ná þessum mikla steini (þ.e. meðhöndla mistökin) mun það meiða þig illa!

Villur eiga sér stað við keyrslu. Það er ómögulegt að laga villur. Þess vegna ætti ekki að veiða villur. Jafnvel ef þú tekur eftir mistökum (ímyndaðu þér þennan stóra stein) geturðu ekki náð sér af því

Undantekning:

Hér ert þú að reyna að keyra forritið þitt, en því miður af einhverjum ástæðum, kastar umsókn litlum steini (undantekningu) á þig

Núna geturðu reynt að veiða eða ganga þennan litla stein.

Ef þú ferð þá mun það meiða þig og ef þú grípur muntu bjarga þér!

Ef undantekning á sér stað er hægt að meðhöndla það með reynslubolta. Á þessum grundvelli er allt hugtak sem kallast undantekningarmeðferð.

______________________________________________________

Þetta er ekki hið fullkomna dæmi til að ímynda sér villur á móti undantekningu. Þú getur hugsað um mörg fleiri dæmi og gert þau mikilvægari. Sumir forritarar kunna ekki að hafa þessa skýringu. Hins vegar er þessi teikning nóg til að útskýra það fyrir einstaklingi sem er ekki góður í forritun :)

Til viðmiðunar:

  • Mismunur á villum og undantekningum í Java Mismunur á villum og undantekningum í Java - Spurning viðtala

svara 2:

Í tengslum við Java stafar undantekning venjulega af rökréttri villu í kóða forritarans eða með því að meðhöndla ákveðnar aðstæður með fyrirvara. Bilun er afleiðing af keyrsluumhverfi sem lendir í aðstæðum þar sem það getur ekki haldið áfram að keyra og getur stöðvað og þar með hætt að keyra forrit sem keyrir á því.

Sumar villur geta stafað af illa skrifuðum forritum, t.d. Til dæmis, minni leki (varðveisla óæskilegra hluta lengra en fyrirhuguð tímalengd eða svæði) myndi leiða til OutOfMemoryError. Aðrar villur geta komið upp þegar frumstillingarumhverfið er frumstætt.


svara 3:

Í tengslum við Java stafar undantekning venjulega af rökréttri villu í kóða forritarans eða með því að meðhöndla ákveðnar aðstæður með fyrirvara. Bilun er afleiðing af keyrsluumhverfi sem lendir í aðstæðum þar sem það getur ekki haldið áfram að keyra og getur stöðvað og þar með hætt að keyra forrit sem keyrir á því.

Sumar villur geta stafað af illa skrifuðum forritum, t.d. Til dæmis, minni leki (varðveisla óæskilegra hluta lengra en fyrirhuguð tímalengd eða svæði) myndi leiða til OutOfMemoryError. Aðrar villur geta komið upp þegar frumstillingarumhverfið er frumstætt.