-
12-03-2009, 12:15 #46Member
- Registered
- 20/09/04
- Location
- Kortrijk / Gent
- Posts
- 7,177
- iTrader
- 1 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 3/43
Mja, het is niet altijd zo dat uw programma vastloopt na een foutmelding en dan kan het inderdaad een business beslissing zijn om de gebruiker niets te laten weten van die foutmelding.
Of denk maar aan een service die staat te draaien.
Dan wil je niet altijd dat de service stopt door een bepaalde error of dat er een popup te voorschijn komt.no votes
-
-
12-03-2009, 13:12 #47Member
- Registered
- 23/11/03
- Location
- Landeurp
- Posts
- 1,791
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 10/17
Het hoeft toch niet vast te lopen? Wat ga je je gebruiker dan wél tonen, een verkeerd resultaat?
no votes
-
12-03-2009, 13:28 #48Member
- Registered
- 17/07/02
- Location
- Wilrijk
- Posts
- 1,994
- iTrader
- 2 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 9/16
komaan zeg effe lezen hehWat ga je je gebruiker dan wél tonen, een verkeerd resultaat?
, -> Nachtelijk services die draaien, bij mijn weten zit der 's nachts gene gebruiker aan die server om popups weg te klikkenOf denk maar aan een service die staat te draaienno votes
-
12-03-2009, 13:36 #49Member
- Registered
- 03/08/02
- Location
- Gavere
- Posts
- 37,519
- iTrader
- 23 (100%)
- Mentioned
- 57 Post(s)
- Reputation
- 0/1281
Eerst: zie reply boven mij

Je resultaat zelf hoeft toch niet in se verkeerd te zijn?
Als je nu bijvoorbeeld puur voor statistische redenen iets wegschrijft naar DB dat niets te maken heeft met je business en dat niet van levensbelang is, dan wil je toch echt niet dat je gebruiker geen deftig antwoord krijgt? En dat er iets fout ging in de statistieken hoeft je gebruiker echt niet te weten.no votes
-
12-03-2009, 14:05 #50Member
- Registered
- 23/11/03
- Location
- Landeurp
- Posts
- 1,791
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 10/17
Ik ga er wel van uit dat de gemiddelde exception net iets ernstiger is dan het niet kunnen onderhouden van statistieken. Hoe dan ook, ik had beter verwacht van een webpagina die over goede programmeergewoontes gaat.
no votes
-
12-03-2009, 14:25 #51Approved 9liver
- Registered
- 18/01/04
- Location
- Melle
- Posts
- 10,535
- iTrader
- 56 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 27/102
Wel grappig om te zien hoe sommige mensen met de meest vreemde codes proberen om hun gelijk te halen, terwijl de meeste stijlconventies gesteund worden door de meest bekende en beste programmeurs die er zijn. Het zijn zij ook meestal die ze opgesteld hebben.
Dat een taal wel ondersteuning geeft voor meerdere returns, breaks, goto's wil niet zeggen dat je ze mag gebruiken als je eens zin hebt.
Ook kunnen veel voorbeelden die hier getoond worden enorm versimpeld worden als er een beetje aan goed ontwerp gedaan wordt:
Statepattern anyone?Code:double getPayAmount() { if (_isDead) return deadAmount(); if (_isSeparated) return separatedAmount(); if (_isRetired) return retiredAmount(); return normalPayAmount(); };
Vanaf je met een hele hoop if's komt te zitten kan je meestal zeggen dat je ontwerp slecht is.Code:double getPayAmount() { return stateObject.PayAmount(); };“In terms of how we evaluate schooling, everything is about working by yourself. If you work with someone else, it’s called cheating. Once you get out in the real world, everything you do involves working with other people.”
PSN: Cycloon - Final Fantasy XIV: A realm reborn characterno votes
-
12-03-2009, 14:28 #52Member
- Registered
- 03/08/02
- Location
- Gavere
- Posts
- 37,519
- iTrader
- 23 (100%)
- Mentioned
- 57 Post(s)
- Reputation
- 0/1281
Wat heeft de "gemiddelde exception" hier nu in godsnaam mee te maken?
De "gemiddelde exception" zal je anders afhandelen dan dit, maar dat wil niet zeggen dat dit geen valide gebruik kan zijn. Punt is dat je geen lege catch-blocks schrijft, hetgeen in het catch-block staat is business-specifiek en daarover kunnen we hier moeilijk een boompje opzetten.no votes
-
12-03-2009, 14:46 #53Member
- Registered
- 17/07/02
- Location
- Wilrijk
- Posts
- 1,994
- iTrader
- 2 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 9/16
Over-Designed anyone?Statepattern anyone?no votes
-
12-03-2009, 15:02 #54Member
- Registered
- 23/11/03
- Location
- Landeurp
- Posts
- 1,791
- iTrader
- 0
- Mentioned
- 0 Post(s)
- Reputation
- 10/17
Kalm, kalm. Mijn punt is dat hij guidelines geeft waarvan je verwacht dat je ze in veel (de meeste) gevallen dient te gebruiken. Nu ondergraaft hij al direct één van zijn richtlijnen door een uitzondering als voorbeeld te geven. Ben jij soms al veel IOExceptions en SQLExceptions tegengekomen die niet fataal waren?

Als hij "// handle exception" in dat catch-block had gezet, was er geen probleem. In godsnaam zeg.no votes
-
12-03-2009, 15:29 #55
Wat een fanatieke regeltjesaanhangers hier allemaal zeg

Als ge dergelijke lijsten van regeltjes tot op de letter begint te volgen zijt ge zelf fout bezig. Dergelijke regeltjes zijn precies zoals met de bijbel: ge moet ten eerste sowieso al 't gezond verstand hebben om ze voor uzelf te kunnen opbrengen, en ge moet ten tweede het idee erachter interpreteren in plaats van ze hersenloos letterlijk te volgen (en aan andere mensen op te dringen).
In die lijst die hiernet gepost werd staat ook fameuze bullshit ze. Onder andere:
Als ge niet inziet wat er daar mis mee is, heb'k slecht nieuws voor u.Last edited by taLa.; 12-03-2009 at 15:36.
$0.02no votes
-
12-03-2009, 15:42 #56Member
- Registered
- 03/08/02
- Location
- Gavere
- Posts
- 37,519
- iTrader
- 23 (100%)
- Mentioned
- 57 Post(s)
- Reputation
- 0/1281
Hij ondergraaft niets. Hij zegt dat je geen lege catch-blocks mag zetten en geeft een volledig correct voorbeeld daarvoor. Ik zie je probleem niet.
Tot je ant/maven buildscripts hebt met checkstyle plugins waarbij de builds falen als uw code niet deftig geformatteerd is volgens de regels. Overall gezien maak je zo gewoon deftige gevormde code.
En wat is daar bullshit aan? Gebruik jij zelf "zetuwbooleanhier == true"?In die lijst die hiernet gepost werd staat ook fameuze bullshit ze. Onder andere:
Als ge niet inziet wat er daar mis mee is, heb'k slecht nieuws voor u.
Of heb je het over het feit dat die boolean daarvoor op true gezet wordt? Als je niet doorhebt dat het daar niet over gaat en dat die boolean daar gewoon wordt gezet om er geen uit de lucht te moeten trekken, dan heb ik slecht nieuws voor u.
Je hebt werkelijk geen idee he?Stephan Janssen de superprogrammeurno votes
-
12-03-2009, 15:44 #57Member
- Registered
- 14/05/03
- Location
- Schoten
- Posts
- 812
- iTrader
- 1 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 1/7
Het voorbeeld wat ik gaf was niet vreemd tot ik het volgens jouw richtlijnen moest schrijven. Je hebt het trouwens nog nergens weerlegd...
Nog een leuke
vsCode:public static double doe_iets(double a, double b) { if (a > b) return a; else if(a < b) return b; return Math.floor(a); }
trouwens hier staan ook een aantal tegenargumenten.Code:public static double doe_iets(double a, double b) { double result; if (a > b) result = a; else if (a < b) result = b; else result = Math.floor(a); return result; }Last edited by Kemblin; 12-03-2009 at 16:18.
no votes
-
12-03-2009, 15:57 #58Member
- Registered
- 20/09/04
- Location
- Kortrijk / Gent
- Posts
- 7,177
- iTrader
- 1 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 3/43
Wat doet die "return Math.floor(a);" daar?
En wat doet dit?
Ik ben niet goed mee eigenlijkCode:if(result != a && result != b) result = Math.floor(a);
no votes
-
12-03-2009, 15:59 #59
Wat daar bullshit aan is is dat de compiler slim genoeg is om in te zien dat beiden identiek zijn, en dus identieke bytecode zal genereren. Het hele argument dat hij aangeeft van er performance mee te winnen en er bytecode mee uit te sparen is dikke zever.
Mijn hele punt is da ge een beetje kritisch moet zijn over die regels en ze interpreteren naargelang uw eigen context. Natuurlijk, als het u opgelegd wordt met bv. een dergelijke maven plugin kunt ge ni anders he
Verder ben ik het grondig eens met wat er gezegd wordt op de pagina waar Kemblin naar linkt:
En dat geldt voor bijna al die regels: als ge u in bochten moet wringen of uw code moet bloaten om toch maar aan de regeltjes te voldoen, zijt ge fout bezig.Most programmers probably support the idea that simple readable code in more important than following any arbitrary rule. If coding to achieve a single return means complicating the code, then it's a mistake.Last edited by taLa.; 12-03-2009 at 16:12.
$0.02no votes
-
12-03-2009, 16:15 #60Member
- Registered
- 14/05/03
- Location
- Schoten
- Posts
- 812
- iTrader
- 1 (100%)
- Mentioned
- 0 Post(s)
- Reputation
- 1/7
die Math.floor doet niks specifiek eigenlijk, maar dat was gewoon om nog een extra operatie toe te voegen.
ja dat had ook gewoon eenvoudigweg een else result =Math.floor(a) kunnen zijn, maar het punt is nu al wel duidelijk hoop ik. Tgaat dus om die extra variabelen.
Op die site staat hetzelfde voorbeeld, maar dan iets duidelijker
Last edited by Kemblin; 12-03-2009 at 16:23.
no votes

