Page 4 of 5 First 12345 Last
  1. #46

    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  

  2. #47
    forloRn_'s Avatar
    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  

  3. #48
    Moto's Avatar
    Registered
    17/07/02
    Location
    Wilrijk
    Posts
    1,994
    iTrader
    2 (100%)
    Mentioned
    0 Post(s)
    Reputation
    9/16
    Wat ga je je gebruiker dan wél tonen, een verkeerd resultaat?
    komaan zeg effe lezen heh , ->
    Of denk maar aan een service die staat te draaien
    Nachtelijk services die draaien, bij mijn weten zit der 's nachts gene gebruiker aan die server om popups weg te klikken
    no votes  

  4. #49

    Registered
    03/08/02
    Location
    Gavere
    Posts
    37,519
    iTrader
    23 (100%)
    Mentioned
    57 Post(s)
    Reputation
    0/1281
    Eerst: zie reply boven mij

    Quote Originally Posted by forloRn_ View Post
    This quote is hidden because you are ignoring this member. Show
    Het hoeft toch niet vast te lopen? Wat ga je je gebruiker dan wél tonen, een verkeerd resultaat?
    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  

  5. #50
    forloRn_'s Avatar
    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  

  6. #51
    Cycloon's Avatar
    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:

    Code:
    double getPayAmount() {
    	if (_isDead) return deadAmount();
    	if (_isSeparated) return separatedAmount();
    	if (_isRetired) return retiredAmount();
    	return normalPayAmount();
    };
    Statepattern anyone?

    Code:
    double getPayAmount() {
    	return stateObject.PayAmount();
    };
    Vanaf je met een hele hoop if's komt te zitten kan je meestal zeggen dat je ontwerp slecht is.
    “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 character
    no votes  

  7. #52

    Registered
    03/08/02
    Location
    Gavere
    Posts
    37,519
    iTrader
    23 (100%)
    Mentioned
    57 Post(s)
    Reputation
    0/1281
    Quote Originally Posted by forloRn_ View Post
    This quote is hidden because you are ignoring this member. Show
    Ik ga er wel van uit dat de gemiddelde exception net iets ernstiger is dan het niet kunnen onderhouden van statistieken.
    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  

  8. #53
    Moto's Avatar
    Registered
    17/07/02
    Location
    Wilrijk
    Posts
    1,994
    iTrader
    2 (100%)
    Mentioned
    0 Post(s)
    Reputation
    9/16
    Statepattern anyone?
    Over-Designed anyone?
    no votes  

  9. #54
    forloRn_'s Avatar
    Registered
    23/11/03
    Location
    Landeurp
    Posts
    1,791
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    10/17
    Quote Originally Posted by eniac View Post
    This quote is hidden because you are ignoring this member. Show
    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.
    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  

  10. #55
    taLa.'s Avatar
    Registered
    03/01/06
    Location
    Gent
    Posts
    435
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    1/16
    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:

    Quote Originally Posted by Stephan Janssen de superprogrammeur
    This quote is hidden because you are ignoring this member. Show
    Avoid performing equality operations on boolean operands. You should not use true and false literals in conditional clauses. By following this rule, you save some byte code instructions in the generated code and improve performance. In most situations, you also improve readability of the program.

    WRONG
    Code:
    boolean isLoaded = true;
    if (isLoaded == true) {
        // ...
    }
    RIGHT
    Code:
    boolean isLoaded = true;
    if (isLoaded) {
        // ...
    }
    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.02
    no votes  

  11. #56

    Registered
    03/08/02
    Location
    Gavere
    Posts
    37,519
    iTrader
    23 (100%)
    Mentioned
    57 Post(s)
    Reputation
    0/1281
    Quote Originally Posted by forloRn_ View Post
    This quote is hidden because you are ignoring this member. Show
    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.
    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.

    Quote Originally Posted by taLa. View Post
    This quote is hidden because you are ignoring this member. Show
    Als ge dergelijke lijsten van regeltjes tot op de letter begint te volgen zijt ge zelf fout bezig.
    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.

    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.
    En wat is daar bullshit aan? Gebruik jij zelf "zetuwbooleanhier == true"?

    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.

    Stephan Janssen de superprogrammeur
    Je hebt werkelijk geen idee he?
    no votes  

  12. #57
    Kemblin's Avatar
    Registered
    14/05/03
    Location
    Schoten
    Posts
    812
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    1/7
    Quote Originally Posted by Cycloon View Post
    This quote is hidden because you are ignoring this member. Show
    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.
    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

    Code:
    public static double doe_iets(double a, double b) {
    	if (a > b)
    		return a;
    	else if(a < b)
    		return b;
    	return Math.floor(a);
    }
    vs

    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;
    }
    trouwens hier staan ook een aantal tegenargumenten.
    Last edited by Kemblin; 12-03-2009 at 16:18.
    no votes  

  13. #58

    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?
    Code:
    if(result != a && result != b)
    		result = Math.floor(a);
    Ik ben niet goed mee eigenlijk
    no votes  

  14. #59
    taLa.'s Avatar
    Registered
    03/01/06
    Location
    Gent
    Posts
    435
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    1/16
    Quote Originally Posted by eniac View Post
    This quote is hidden because you are ignoring this member. Show
    En wat is daar bullshit aan? Gebruik jij zelf "zetuwbooleanhier == true"?

    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.
    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:
    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.
    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.
    Last edited by taLa.; 12-03-2009 at 16:12.
    $0.02
    no votes  

  15. #60
    Kemblin's Avatar
    Registered
    14/05/03
    Location
    Schoten
    Posts
    812
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    1/7
    Quote Originally Posted by MilM View Post
    This quote is hidden because you are ignoring this member. Show
    Wat doet die "return Math.floor(a);" daar?

    die Math.floor doet niks specifiek eigenlijk, maar dat was gewoon om nog een extra operatie toe te voegen.

    Quote Originally Posted by MilM View Post
    This quote is hidden because you are ignoring this member. Show
    En wat doet dit?
    Code:
    if(result != a && result != b)
    		result = Math.floor(a);
    Ik ben niet goed mee eigenlijk
    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  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in