Hoe lief moet je zijn met het schrijven van je methodes? Ik heb er een enorme rothekel aan als ik methodes heb die geen foutmelding gegeven en er toch iets niet helemaal in de haak was:
Dit wil ik dus niet, ik wil gewoon een dikke foutmelding:
In het geval van leeftijd, is er dus echt iets fout gegaan op het moment dat je aanroept met -15 en dan wil je dus een foutmelding.
Maar in sommige gevallen is de grens wat minder duidelijk. Stel je hebt een of ander object met een lijst met listeners, en je wilt een listener removen die niet in de list zit. Ga je dan een foutmelding opwerpen? Of ga je gewoon verder alsof niets aan de hand was? Tenslotte heeft niemand er last van dat dat object niet in die lijst zat. Op het moment dat je dan een fout gaat introduceren, zorg je ervoor dat deze fout opgemerkt wordt door een programmeur (en dus gaat verhelpen). Aan de andere kant heb je een api die een lading (misschien onnodige) fouten opwerpt.
Het gaat me dus niet zozeer om dit listeners verhaal (dus kom me niet met allerlei api verwijzinginen aanzetten). Maar in hoeverre moet je lief zijn en in hoeverre streng?
code:
1
2
3
4
5
6
| setLeeftijd(int leefijd){
if(leeftijd<0)
_leeftijd = 0;
else
_leeftijd = leeftijd;
} |
Dit wil ik dus niet, ik wil gewoon een dikke foutmelding:
code:
1
2
3
4
5
| setLeeftijd(int leefijd){
if(leeftijd<0)
throw new IllegalArgumentException("....");
_leeftijd = leeftijd;
} |
In het geval van leeftijd, is er dus echt iets fout gegaan op het moment dat je aanroept met -15 en dan wil je dus een foutmelding.
Maar in sommige gevallen is de grens wat minder duidelijk. Stel je hebt een of ander object met een lijst met listeners, en je wilt een listener removen die niet in de list zit. Ga je dan een foutmelding opwerpen? Of ga je gewoon verder alsof niets aan de hand was? Tenslotte heeft niemand er last van dat dat object niet in die lijst zat. Op het moment dat je dan een fout gaat introduceren, zorg je ervoor dat deze fout opgemerkt wordt door een programmeur (en dus gaat verhelpen). Aan de andere kant heb je een api die een lading (misschien onnodige) fouten opwerpt.
Het gaat me dus niet zozeer om dit listeners verhaal (dus kom me niet met allerlei api verwijzinginen aanzetten). Maar in hoeverre moet je lief zijn en in hoeverre streng?
[ Voor 16% gewijzigd door Alarmnummer op 02-06-2004 21:49 ]