[alg] Slechtste programmeervoorbeelden deel 4 Vorige deel Overzicht Laatste deel

Dit topic is onderdeel van een reeks. Ga naar het meest recente topic in deze reeks.

Pagina: 1 ... 15 ... 103 Laatste
Acties:
  • 993.592 views

Acties:
  • 0 Henk 'm!

  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 18:00
Wooow... Best een bout code dan, degene die het gemaakt heeft kent in elk geval de ctrl+v en ctrl+c knoppen wel goed zeg.
Adrestypen kan je net zo goed online (in een database) koppelen en met AJAX ophalen. Scheelt je enorme bakken code op cliënt side, en je kan je code heel eenvoudig uitbreiden met een nieuw land, nieuwe adres opmaak.
Hoeft de cliënt ook geen js file in te laden die zo groot is.

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
jbdeiman schreef op woensdag 09 september 2009 @ 10:22:
Wooow... Best een bout code dan, degene die het gemaakt heeft kent in elk geval de ctrl+v en ctrl+c knoppen wel goed zeg.
Adrestypen kan je net zo goed online (in een database) koppelen en met AJAX ophalen. Scheelt je enorme bakken code op cliënt side, en je kan je code heel eenvoudig uitbreiden met een nieuw land, nieuwe adres opmaak.
Hoeft de cliënt ook geen js file in te laden die zo groot is.
Dat er het een en ander te optimaliseren valt is wel duidelijk, maar om het dan maar meteen met AJAX te doen hoeft ook niet natuurlijk.

Je kunt perfect een JS file laten genereren met de landen in een array bijvoorbeeld. Als je toch altijd alle landen nodig hebt op de client, heeft het niet zoveel meerwaarde om die later via AJAX op te halen, want je moet dan nog net zo goed alle waardes oversturen.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 18:00
@Woy
Dat wel, maar het is voor de onderhoudbaarheid van de code veel eenvoudiger als je die laat genereren. Vandaar mijn opmerking over AJAX. Je kan wel 1 grote array maken, maar je moet in die array ook meteen de adresopmaak koppelen aan het land.
Je krijgt zo:
a) Behoorlijke overhead in je code
b) Nog steeds een behoorlijk JavaScript bestand
c) Code waarbij niets werkt als JS is uitgeschakeld, dus je ook niets te zien krijgt van een dropdownlijst.

Je moet hoe dan ook al dat soort gegevens (ook adres opmaak) toch al aan de serverkant controleren, omdat de inputcontrole op de client kant niet waterdicht is. Waarom dan een dubbele controle toepassen en dubbele code (JS en PHP) maken, die je bij een wijziging ook nog eens beiden aan moet passen? Lijkt mij sowieso niet handig, vandaar dus mijn opmerking.

Alles in een JS array opslaan (cliënt side) en ook nog in PHP (bijvoorbeeld) controleren (Server Side) omdat dat nu eenmaal nodig is, wegens het niet waterdicht zijn van de JS controle, is gewoon dubbel werk en ook lastiger te onderhouden.
Ik zeg niet dat het dubbel doen fout is, maar het kan gewoon vanuit 1 systeem gaan werken, dat is qua onderhoudbaarheid van je code stukken eenvoudiger. Vantevoren misschien wat lastiger/ ingewikkelder/ meer werk, maar het helpt je uiteindelijk je acties sneller te kunnen uitvoeren.

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

jbdeiman schreef op woensdag 09 september 2009 @ 11:01:
@Woy
Dat wel, maar het is voor de onderhoudbaarheid van de code veel eenvoudiger als je die laat genereren. Vandaar mijn opmerking over AJAX. Je kan wel 1 grote array maken, maar je moet in die array ook meteen de adresopmaak koppelen aan het land.
Je krijgt zo:
a) Behoorlijke overhead in je code
Nee, want je moet het sowieso doen.
b) Nog steeds een behoorlijk JavaScript bestand
Volgens mij valt dat best mee...
c) Code waarbij niets werkt als JS is uitgeschakeld, dus je ook niets te zien krijgt van een dropdownlijst.
Als JS is uitgeschakeld werkt AJAX ook niet he.

Wat de rest van je verhaal betreft: ik ben geen webhippie, maar zijn er niet systemen waarin je met 1 taal werkt voor zowel server- als clientside, waarbij de clientside code vertaald wordt naar javascript als die taal niet js is?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
jbdeiman schreef op woensdag 09 september 2009 @ 11:01:
@Woy
Dat wel, maar het is voor de onderhoudbaarheid van de code veel eenvoudiger als je die laat genereren. Vandaar mijn opmerking over AJAX. Je kan wel 1 grote array maken, maar je moet in die array ook meteen de adresopmaak koppelen aan het land.
Je krijgt zo:
a) Behoorlijke overhead in je code
b) Nog steeds een behoorlijk JavaScript bestand
c) Code waarbij niets werkt als JS is uitgeschakeld, dus je ook niets te zien krijgt van een dropdownlijst.

Je moet hoe dan ook al dat soort gegevens (ook adres opmaak) toch al aan de serverkant controleren, omdat de inputcontrole op de client kant niet waterdicht is. Waarom dan een dubbele controle toepassen en dubbele code (JS en PHP) maken, die je bij een wijziging ook nog eens beiden aan moet passen? Lijkt mij sowieso niet handig, vandaar dus mijn opmerking.

Alles in een JS array opslaan (cliënt side) en ook nog in PHP (bijvoorbeeld) controleren (Server Side) omdat dat nu eenmaal nodig is, wegens het niet waterdicht zijn van de JS controle, is gewoon dubbel werk en ook lastiger te onderhouden.
Ik zeg niet dat het dubbel doen fout is, maar het kan gewoon vanuit 1 systeem gaan werken, dat is qua onderhoudbaarheid van je code stukken eenvoudiger. Vantevoren misschien wat lastiger/ ingewikkelder/ meer werk, maar het helpt je uiteindelijk je acties sneller te kunnen uitvoeren.
Ik snap niet wat AJAX hier aan oplossing voor bied? Of je nu direct een JS file genereert met de juiste waardes, of via AJAX alsnog de gegevens doorstuurt, waarna je ze ook gewoon in JS moet behandelen. Je zult sowieso je server checks moeten hebben, daar kom je op geen enkele manier onder uit. Ook aan de client kant wil je nog checks hebben om de responsivness zo goed mogelijk te houden.
a) Behoorlijke overhead in je code
Hoezo is een gegenereerde lijst in Javascript dan dat je het via AJAX overstuurt? Ik zie het verschil niet
b) Nog steeds een behoorlijk JavaScript bestand
Of je nu een groot javascript bestand hebt, of een groot XML/JSON/whatever bestand wat je via AJAX opvraagt haalt ook niet zo veel uit. Je hebt die gegevens blijkbaar nodig op de client, dus op de een of andere manier moet je die daar krijgen. Natuurlijk moet je het niet zoals in het voorbeeld x keer defineren.
c) Code waarbij niets werkt als JS is uitgeschakeld, dus je ook niets te zien krijgt van een dropdownlijst.
Ja en AJAX werkt wel lekker als je geen javascript hebt ;)
edit:

Grrr .oisyn

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
@jbdeiman, je argumenten zijn al onderuit gehaald.
Maar wat bedoel je met code generatie? Je gebruikt dan een bepaalde studio om AJAX code te genereren? Op basis van XML-tjes ofzo? Of bedoel je dat de inhoud voor de dropdown wordt gegenereerd op basis van de database en je het dus via de database kan onderhouden?

Ampera-e (60kWh) -> (66kWh)


Acties:
  • 0 Henk 'm!

  • Domdo
  • Registratie: Juni 2009
  • Laatst online: 30-06 20:29
ik denk dat API's á la GWT(http://code.google.com/webtoolkit/) bedoelt

Acties:
  • 0 Henk 'm!

  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 18:00
@!null
Precies wat ik bedoel is het laatste wat je noemt, je dropdown e.d. wordt gegenereerd vanuit je database, aanpassingen / toevoegingen zijn gauw gedaan. Je kan er evt. ook voor kiezen om de code verder (op het steeds opnieuw declareren van die JS variabelen na) zo te laten en die JS array vanuit je database te genereren natuurlijk.
Argumenten onderuitgehaald zie ik niet zo, en daar gaat het ook niet om. Het is geen wedstrijdje wie er nu wel of geen gelijk heeft he!

@Woy
Woy schreef op woensdag 09 september 2009 @ 11:10:
Ik snap niet wat AJAX hier aan oplossing voor bied? Of je nu direct een JS file genereert met de juiste waardes, of via AJAX alsnog de gegevens doorstuurt, waarna je ze ook gewoon in JS moet behandelen. Je zult sowieso je server checks moeten hebben, daar kom je op geen enkele manier onder uit. Ook aan de client kant wil je nog checks hebben om de responsivness zo goed mogelijk te houden.
Maar moet je dan zowel in PHP als in Javascript handmatig je arrays intikken? Is ook dubbel werk met onderhoud he, daar doel ik op. Als je dit laat genereren vanuit PHP dan hoef je maar op 1 locatie een nieuwe locatie/ wijziging te doen, om het in 1 keer door je hele systeem aan te passen.
AJAX bied een oplossing dat je maar een 1 malige controleconstructie hoeft te schrijven en wel server side. De controle vind ook meteen al server side plaats vanuit AJAX, het is dan niet nodig om de gehele controle ook nog eens in JS te schrijven. Daarom dus, het is gewoon dubbel werk om een hele controle structuur in JS op te zetten, als je het ook in PHP (of ASP, of wat voor taal dan ook) kan doen.
Daarin kan AJAX een bult meerwaarde bieden.
Wil jij bij een nieuwe controle / nieuwe adres opmaak mogelijkheid, zowel een PHP code voor de controle schrijven als een JS code, of wil je slechts in PHP een nieuwe controle maken die in 1 keer aangeroepen kan worden?
Woy schreef op woensdag 09 september 2009 @ 11:10:
Hoezo is een gegenereerde lijst in Javascript dan dat je het via AJAX overstuurt? Ik zie het verschil niet
Zei ik dat? Dat bedoel ik niet, maar overhead is meer in de zin van die dubbele controle schrijven (zie reactie hierboven deze quote)
Woy schreef op woensdag 09 september 2009 @ 11:10:
Of je nu een groot javascript bestand hebt, of een groot XML/JSON/whatever bestand wat je via AJAX opvraagt haalt ook niet zo veel uit. Je hebt die gegevens blijkbaar nodig op de client, dus op de een of andere manier moet je die daar krijgen. Natuurlijk moet je het niet zoals in het voorbeeld x keer defineren.
Het ging mij niet zozeer om de overhead in het meegeven van die array, of al die waarden, maar om de overhead in de controle. Als je in JS ook de controle wilt doen, ben je bezig (mijns inziens) met het schrijven van dubbele code, 1x in PHP en 1x in JS, wat je dus met AJAX kan afvangen. Die overhead bedoelde ik. Sorry als dat niet helemaal duidelijk was
Woy schreef op woensdag 09 september 2009 @ 11:10:
Ja en AJAX werkt wel lekker als je geen javascript hebt ;)
Ik dacht toch echt dat ik aangaf dat alleen JS controle niet goed is. Je genereert de dropdown vanuit je database/ PHP code. Vervolgens kan je (indien JS aan staat) live controleren of de inhoud van een veld klopt, staat die niet aan, dan controleer je het na het posten.
Is prima werkbaar, je hebt wel de dubbele controle waar je nu ook voor kiest, maar het is veel generieker.

[ Voor 66% gewijzigd door jbdeiman op 09-09-2009 12:16 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

jbdeiman schreef op woensdag 09 september 2009 @ 11:47:
Je kan er evt. ook voor kiezen om de code verder (op het steeds opnieuw declareren van die JS variabelen na) zo te laten en die JS array vanuit je database te genereren natuurlijk.
Dat is toch precies wat Woy zei in eerste instantie?
Woy schreef op woensdag 09 september 2009 @ 10:50:
Je kunt perfect een JS file laten genereren met de landen in een array bijvoorbeeld. Als je toch altijd alle landen nodig hebt op de client, heeft het niet zoveel meerwaarde om die later via AJAX op te halen, want je moet dan nog net zo goed alle waardes oversturen.

[ Voor 53% gewijzigd door .oisyn op 09-09-2009 11:52 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • flashin
  • Registratie: Augustus 2002
  • Laatst online: 17-12-2023
Ik vind toepassingen van 'AJAX' vaak echt een dailywtf... Hoe onnozel mensen daar mee omgaan.
Als je je website volledig baseert op AJAX events, hoe handel je bijv. timeouts af? Mensen denken dat die niet kunnen voorkomen en handelen dat bijna nooit af.
Ik vind dat een site moet kunnen werken zonder en dat AJAX verder alleen complementair is.

Acties:
  • 0 Henk 'm!

  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 18:00
flashin schreef op woensdag 09 september 2009 @ 12:07:
Ik vind toepassingen van 'AJAX' vaak echt een dailywtf... Hoe onnozel mensen daar mee omgaan.
Als je je website volledig baseert op AJAX events, hoe handel je bijv. timeouts af? Mensen denken dat die niet kunnen voorkomen en handelen dat bijna nooit af.
Ik vind dat een site moet kunnen werken zonder en dat AJAX verder alleen complementair is.
Daarom geef ik ook aan dat die niet volledig op AJAX moet bouwen, maar de controle eigenlijk server side moet plaats vinden. Dit kan je live doen (mits ondersteund) of gewoon na posten. Als AJAX niet werkt, werkt (waarschijnlijk) JavaScript controle niet. Je hoeft dan echter maar 1 maal de controle functionaliteiten te schrijven en op 1 plek aan te passen.

Een volledige website op AJAX ben ik zeker geen fan van, het kan wel een en ander toevoegen aan je websitefunctionaliteiten. Echter zonder AJAX/ JS ondersteuning moet je website ook werken. JavaScript is mijns insziens een leuke manier om extra functionaliteiten/ gelikte acties toe te voegen op je website, maar moet geen doel op zich zijn. Zonder JS ondersteuning moet je website gewoon functioneren, maar moeten misschien wat vaker hele pagina's herladen worden, of bezoekers wachten op controle van ingevoerde gegevens tot ze op de verzendknop drukken.

Acties:
  • 0 Henk 'm!

  • mcdronkz
  • Registratie: Oktober 2003
  • Laatst online: 16-04 12:44
jbdeiman schreef op woensdag 09 september 2009 @ 12:19:
[...]

Daarom geef ik ook aan dat die niet volledig op AJAX moet bouwen, maar de controle eigenlijk server side moet plaats vinden. Dit kan je live doen (mits ondersteund) of gewoon na posten. Als AJAX niet werkt, werkt (waarschijnlijk) JavaScript controle niet. Je hoeft dan echter maar 1 maal de controle functionaliteiten te schrijven en op 1 plek aan te passen.

Een volledige website op AJAX ben ik zeker geen fan van, het kan wel een en ander toevoegen aan je websitefunctionaliteiten. Echter zonder AJAX/ JS ondersteuning moet je website ook werken. JavaScript is mijns insziens een leuke manier om extra functionaliteiten/ gelikte acties toe te voegen op je website, maar moet geen doel op zich zijn. Zonder JS ondersteuning moet je website gewoon functioneren, maar moeten misschien wat vaker hele pagina's herladen worden, of bezoekers wachten op controle van ingevoerde gegevens tot ze op de verzendknop drukken.
Unobtrusive JavaScript zijn de woorden waar je naar opzoek bent ;)

Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 17:15

Haan

dotnetter

Vanmiddag schoot me nog eentje te binnen die ik vorig jaar een keer tegenkwam op internet, maar kan deze niet meer terugvinden. Het ging om een property om te kijken of er op Windows XP, of op Vista gedraaid werd, ivm andere UI layout o.i.d. Deze check werd gedaan door op te vragen wat het gebruikte systeem font is..
C#:
1
2
3
4
5
6
7
public bool IsVista
{
      get
      {
           return System.Drawing.SystemFonts.MenuFont.Name == "Segoe UI";
      }
}

Wat is er mis met Environment.OSVersion zou je dan zeggen :P

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 22:03

RayNbow

Kirika <3

Haan schreef op zondag 20 september 2009 @ 17:05:
Vanmiddag schoot me nog eentje te binnen die ik vorig jaar een keer tegenkwam op internet, maar kan deze niet meer terugvinden. Het ging om een property om te kijken of er op Windows XP, of op Vista gedraaid werd, ivm andere UI layout o.i.d. Deze check werd gedaan door op te vragen wat het gebruikte systeem font is..
C#:
1
2
3
4
5
6
7
public bool IsVista
{
      get
      {
           return System.Drawing.SystemFonts.MenuFont.Name == "Segoe UI";
      }
}

Wat is er mis met Environment.OSVersion zou je dan zeggen :P
* RayNbow draait Vista met Tahoma O-)

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • Maghiel
  • Registratie: Maart 2004
  • Laatst online: 15:31
jbdeiman schreef op woensdag 09 september 2009 @ 12:19:
[...]

Daarom geef ik ook aan dat die niet volledig op AJAX moet bouwen, maar de controle eigenlijk server side moet plaats vinden. Dit kan je live doen (mits ondersteund) of gewoon na posten. Als AJAX niet werkt, werkt (waarschijnlijk) JavaScript controle niet. Je hoeft dan echter maar 1 maal de controle functionaliteiten te schrijven en op 1 plek aan te passen.

Een volledige website op AJAX ben ik zeker geen fan van, het kan wel een en ander toevoegen aan je websitefunctionaliteiten. Echter zonder AJAX/ JS ondersteuning moet je website ook werken. JavaScript is mijns insziens een leuke manier om extra functionaliteiten/ gelikte acties toe te voegen op je website, maar moet geen doel op zich zijn. Zonder JS ondersteuning moet je website gewoon functioneren, maar moeten misschien wat vaker hele pagina's herladen worden, of bezoekers wachten op controle van ingevoerde gegevens tot ze op de verzendknop drukken.
Ja nogal wiedes, als JavaScript uit staat werkt AJAX niet idd :p
(en uberhaupt ajax, ik heb het nooit begrepen, we deden het allang alleen gaf iemand er een naampje aan en was het ineens HET ding om te doen :S)

Validatie aan client kant is een leuk hulpmiddel, en kan de gebruiker meer gemak geven. Maar het kan niet de echte validatie voor input in je systeem zijn. Als je als javascript ingeschakeld is puur op client side validatie vertrouwd.....vul zelf maar aan :p

[ Voor 5% gewijzigd door Maghiel op 24-09-2009 03:41 ]


  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 08-09 11:33
jbdeiman schreef op woensdag 09 september 2009 @ 12:19:
[...]

Daarom geef ik ook aan dat die niet volledig op AJAX moet bouwen, maar de controle eigenlijk server side moet plaats vinden. Dit kan je live doen (mits ondersteund) of gewoon na posten. Als AJAX niet werkt, werkt (waarschijnlijk) JavaScript controle niet. Je hoeft dan echter maar 1 maal de controle functionaliteiten te schrijven en op 1 plek aan te passen.

Een volledige website op AJAX ben ik zeker geen fan van, het kan wel een en ander toevoegen aan je websitefunctionaliteiten. Echter zonder AJAX/ JS ondersteuning moet je website ook werken. JavaScript is mijns insziens een leuke manier om extra functionaliteiten/ gelikte acties toe te voegen op je website, maar moet geen doel op zich zijn. Zonder JS ondersteuning moet je website gewoon functioneren, maar moeten misschien wat vaker hele pagina's herladen worden, of bezoekers wachten op controle van ingevoerde gegevens tot ze op de verzendknop drukken.
De ASP.Net validation controls doen exact dat altijd 2 manieren van controleren. Zijn vast andere 'ajax' frameworks die dat ook kunnen.Scheelt een hoop werk

~ Mijn prog blog!


  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
Ik ben benieuwd hoe software voor blinden en dergelijke doorgaans om kan gaan met ongein zoals AJAX.
Maghiel schreef op donderdag 24 september 2009 @ 03:40:
(en uberhaupt ajax, ik heb het nooit begrepen, we deden het allang alleen gaf iemand er een naampje aan en was het ineens HET ding om te doen :S)
Ben ik toch niet met je eens, data heen en weer smijten met XML, en dan met javascript je pagina opnieuw invullen zonder te herhalen was nou niet echt gebruikelijk. Dat het maar een naampje is, dat het hip is en dat het vroeger al kon ben ik wel met je eens.

[ Voor 9% gewijzigd door !null op 24-09-2009 08:47 ]

Ampera-e (60kWh) -> (66kWh)


Verwijderd

!null schreef op dinsdag 08 september 2009 @ 16:40:
Whaha. En "Christmas Island", die kende ik nog niet.
Ik verwacht dat de rest van de implementatie ook niet veel soeps is.
Is dat niet naast de paaseiland?

  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

Maghiel schreef op donderdag 24 september 2009 @ 03:40:
[...]


Ja nogal wiedes, als JavaScript uit staat werkt AJAX niet idd :p
(en uberhaupt ajax, ik heb het nooit begrepen, we deden het allang alleen gaf iemand er een naampje aan en was het ineens HET ding om te doen :S)
Nee, het was opeens HET ding om te doen en daarom was het makkelijk om het een naampje te geven om niet steeds te hoeven uitleggen wat je nou bedoelt ;)

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

kenneth schreef op donderdag 24 september 2009 @ 09:03:
[...]
Nee, het was opeens HET ding om te doen en daarom was het makkelijk om het een naampje te geven om niet steeds te hoeven uitleggen wat je nou bedoelt ;)
Alleen zo jammer dat er meestal geen XML gebruiken of niet asynchroon werken en het dan alsnog AJAX blijven noemen :P Heb het altijd een waardeloze naam gevonden, maargoed "iedereen" weet wat je ermee bedoeld en daar gaat het om :Y)

  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

Juist :) Ik vind e-mail ook een waardeloze term maar het is praktischer dan SMTP/POP3/IMAP over TCP/IP :+

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • YopY
  • Registratie: September 2003
  • Laatst online: 13-07 01:14
En SJAJ, SJAH of SJAPT bekt gewoon niet zo lekker in het Engelsch. Niet dat AJAX dat overigens doet, maar boeie.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

roy-t schreef op donderdag 24 september 2009 @ 08:42:
[...]


De ASP.Net validation controls doen exact dat altijd 2 manieren van controleren. Zijn vast andere 'ajax' frameworks die dat ook kunnen.Scheelt een hoop werk
Dit zat bijvoorbeeld ook al in commons.validator wat onderandere ook in struts gebruikt werd zo'n 5 jaar geleden.

Het allergrootste voordeel van een dergelijke aanpakt blijft dat je slechts 1x je validatie regels configureert. Het is natuurlijk wachten op problemen wanneer je je clientside en je serverside validatie apart moet valideren. Murphy dicteert dat er dan een keer een discrepantie insluipt waardoor clientside iets wel verplicht is, maar vergeten wordt dit ook aan de serverkant toe te voegen ;).

Maar helaas zijn er nog legio ontwikkelaars met een hoog NIH-gehalte die denken dat webgui's ontwikkelen toch echt iets is dat ze vooral helemaal zelf moeten doen ;).

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Janoz schreef op donderdag 24 september 2009 @ 11:28:
[...]
Maar helaas zijn er nog legio ontwikkelaars met een hoog NIH-gehalte die denken dat webgui's ontwikkelen toch echt iets is dat ze vooral helemaal zelf moeten doen ;).
Mjah, soms kan 't best handig zijn om iets te hebben wat beter aansluit op de rest van je app, maar ik ben het zeker met je eens. Sterker nog, ik had er zelf laatst per ongeluk last van. Nou ja, eigenlijk blindstaren op functionaliteit die ook beschikbaar was zoals ik em nodig had ;-)

In ASP.NET MVC 2 heb je de DisplayFor<>/EditorFor<> extension methods op de HTMLHelper. Wat deze doen is een partial view renderen, waarbij de details worden afgeleidt vanuit een lambda die je als parameter meegeeft. Stel ons model is een BlogPost. Effe minimaal:
C#:
1
2
3
4
class BlogPost
{
  public string Subject { get; set; }
}

in de ASPX kan je dan op deze manier een template gebruiken voor je edit field:
C#:
1
<%= Html.EditorFor(x => x.Subject) %>

het parameter type van de lamdba is automatisch die van het model van je view.

Nu was bij mij het geval dat ik een lijst van strings heb (namen van properties), die ik ook graag templated wou zien. Nu verwacht EditorFor een expression van het type 'PropertyOrField' o.i.d, dus ik kan niet simpelweg een lamdba met een methodcall er in zetten. Dus ik een uurtje of twee prutsen met het zelf construeren van een mooie expression, kom ik er achter dat er ook een variant bestaat die gewoon een string accepteert, namelijk:
C#:
1
<%= Html.Editor("Subject") %>


}:O

  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
Zo had ik tijdje terug ook een functie geschreven in C om een getal in chars om te zetten naar een decimale int, waarbij het tekstuele getal een getal was met afwijkende base. Het was geen decimaal of hexadecimaal, het was base 4 of 8 ofzo iets. Ik daar een functie voor geschreven, wou ik hem net gaan testen, komt m'n leidinggevende toevallig binnengelopen. "Oh maar daar heb je gewoon die en die functie voor.." Toen gingen we mijn functie nog wel even testen, en hij werkte wel in 1 keer :+

Ampera-e (60kWh) -> (66kWh)


  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Janoz schreef op donderdag 24 september 2009 @ 11:28:
[...]

Maar helaas zijn er nog legio ontwikkelaars met een hoog NIH-gehalte die denken dat webgui's ontwikkelen toch echt iets is dat ze vooral helemaal zelf moeten doen ;).
Dat is zeker zo, maar helaas zijn er ook veel te veel gui componenten die gewoon niet anders zijn te omschrijven als "brak". Mede daardoor hebben wij op een gegeven moment besloten om bijvoorbeeld zelf met jQuery een C# datagrid implementatie te schrijven. Kostte ons een week aan arbeid. Ik denk dat we in het verleden al makkelijk een maand kwijt zijn geraakt aan bugs met het grid van Telerik, om maar iets te noemen.

Bovendien is ons grid ook een stuk performanter. Tis niet altijd NIH, maar "we can do it better". ;)

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

Verwijderd

Slurp. Het is nog vroeg. Mijn eigen include suggestie in [PHP] Is deze switch functie wel veilig? wil ik graag nomineren voor het nekschot van het jaar. Ik ga maar even stil in een hoekje zitten huilen.

Acties:
  • 0 Henk 'm!

  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
Verwijderd schreef op vrijdag 25 september 2009 @ 11:29:
Slurp. Het is nog vroeg. Mijn eigen include suggestie in [PHP] Is deze switch functie wel veilig? wil ik graag nomineren voor het nekschot van het jaar. Ik ga maar even stil in een hoekje zitten huilen.
Zou niet geheel onterecht zijn om dat te gaan doen :D

Ampera-e (60kWh) -> (66kWh)


Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 21:46

Matis

Rubber Rocket

!null schreef op vrijdag 25 september 2009 @ 11:34:
Zou niet geheel onterecht zijn om dat te gaan doen :D
Dit wordt een unanieme stemronde denk ik :D

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 22:26

Creepy

Tactical Espionage Splatterer

Je doet je nick eer aan :P

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
Wanneer heb je die nickchange aangevraagd?

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

Grijze Vos schreef op donderdag 24 september 2009 @ 16:21:
Bovendien is ons grid ook een stuk performanter. Tis niet altijd NIH, maar "we can do it better". ;)
Vanuit het perspectief van een NIH-er is zijn (of haar) oplossing ook van het kaliber "we can do it better". De scheidslijn is heel erg dun en je moet wel kunnen relativeren om niet in de valkuil te stappen.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
.NET grids zijn hopeloos, ik heb dat al heel vaak gezien/gehoord. Sowieso vind ik dat hele .NET gebeuren zwaar overrated: de HTML-code die het standaard produceert is echt om van te huilen :'(

Acties:
  • 0 Henk 'm!

Verwijderd

Grijze Vos schreef op donderdag 24 september 2009 @ 16:21:
Ik denk dat we in het verleden al makkelijk een maand kwijt zijn geraakt aan bugs met het grid van Telerik, om maar iets te noemen.
Tikkie offtopic, maar heb je een indicatie of bv. een link naar die bugs in Teleriks grid? Op m'n werk zijn we op zoek naar een goede control suite incl. grid en treeview (eerst ASP.NET, later Silverlight en WPF), en hebben DevExpress, Infragistics en Telerik op het oog.

DevExpress gebruiken we al jaren in Delphi/Win32 apps, met mixed feelings: alles werkt prima totdat je upgrade naar een nieuwere versie (oude properties bestaan niet meer, nieuwe properties werken anders, en soms is de active control opeens niet meer de DevEx control, maar een inner control waar de de DevEx control alleen maar de placeholder van is, irritant en een pain in the **s).

Infragistics hebben we alleen nog maar in C#/WinForms applicaties gebruikt. Prima control suite, en hun grid kan alles wat we zoeken (soms met wat quirks, maar daar is omheen te werken). Alleen is 't ding vooral *traag*.

In came Telerik, and in came een nieuwe collega die vol goede moed en zonder de bovenstaande ervaringen op zoek ging naar een suite die 't voor ons voor de toekomst het best zou doen, en hij kwam (met goede argumenten en demo's) op Telerik.

In principe doen ze alle 3 hetzelfde, maar als er bij Telerik lijken in de kast liggen zou ik graag weten waar, en wat de impact is...

  • Yeroon1986
  • Registratie: Augustus 2005
  • Laatst online: 01-08 10:13
Even een schopje doen :)

Weer een duik in legacy code aan het doen. Kom je dit tegen:

PHP:
1
2
3
function euro($bedrag) {
    return "&euro;&nbsp;" . number_format($bedrag, 2, ",", ".");
}


Kende setlocale() en money_format() zeker niet :).

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

De grotere WTF vind ik eigenlijk nog het opslaan van bedragen in floating point :X

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 22:19

Onbekend

...

.oisyn schreef op woensdag 30 september 2009 @ 11:33:
De grotere WTF vind ik eigenlijk nog het opslaan van bedragen in floating point :X
Dat komt omdat dat weinig op school wordt geleerd. Geheel getal? -> Integer. Kommagetal ? Floating point. ;)

Speel ook Balls Connect en Repeat


  • Standeman
  • Registratie: November 2000
  • Laatst online: 15:28

Standeman

Prutser 1e klasse

.oisyn schreef op woensdag 30 september 2009 @ 11:33:
De grotere WTF vind ik eigenlijk nog het opslaan van bedragen in floating point :X
Dat is net zoiets als een datum opslaan als met de kolommen dag, maand, jaar, uur, minuut. Wat ik ooit ook wel eens ben tegengekomen :')

The ships hung in the sky in much the same way that bricks don’t.


  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
Ik kan meerdere redenen bedenken om het niet te doen, maar ik ben benieuwd waarom jullie er nou zo over vallen.
Verder vind ik het ook wel redelijk logisch dat mensen het doen, een cent is toch een honderdste van een euro. Maar ik verwacht ook wel dat het veiliger is om het in integers op te slaan, dus alles x100.

Ampera-e (60kWh) -> (66kWh)


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Grijze Vos schreef op donderdag 24 september 2009 @ 16:21:
[...]

Dat is zeker zo, maar helaas zijn er ook veel te veel gui componenten die gewoon niet anders zijn te omschrijven als "brak". Mede daardoor hebben wij op een gegeven moment besloten om bijvoorbeeld zelf met jQuery een C# datagrid implementatie te schrijven. Kostte ons een week aan arbeid. Ik denk dat we in het verleden al makkelijk een maand kwijt zijn geraakt aan bugs met het grid van Telerik, om maar iets te noemen.

Bovendien is ons grid ook een stuk performanter. Tis niet altijd NIH, maar "we can do it better". ;)
In een week schrijf je echt geen grid die dezelfde mogelijkheden heeft als een commercieel verkrijgbare grid. Dat kán gewoon niet. Als je kunt leven met minder opties is het natuurlijk prima, maar wij gebruiken in een aantal applicaties de grid nogal intensief met veel opties voor de gebruiker (sorteren, groeperen, tussentellingen, totaaltellingen, per user de kolommen onthouden, lazy loading, autofilters, uitgebreide filters, master detail, tabs in de detail etc etc. Dat kost je maanden werk om te bouwen. Dat is echt weggegooid geld als je voor een paar honderd euro een grid kan kopen. Er zal met elke grid wel iets aan de hand zijn, maar zelf schrijven lijkt me in veel gevallen geen optie.

Oops! Google Chrome could not find www.rijks%20museum.nl


  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

!null schreef op woensdag 30 september 2009 @ 12:10:
Ik kan meerdere redenen bedenken om het niet te doen, maar ik ben benieuwd waarom jullie er nou zo over vallen.
Verder vind ik het ook wel redelijk logisch dat mensen het doen, een cent is toch een honderdste van een euro. Maar ik verwacht ook wel dat het veiliger is om het in integers op te slaan, dus alles x100.
Floating point is onnauwkeurig. Dat kan in bepaalde situaties acceptabel zijn, maar als je in een veld €1,73 propt, is het prettig dat dat er ook € 1,73 uitkomt en niet €1,72994232. Juist als er dan gerekend gaat worden (wat natuurlijk vaak gebeurt met bedragen) krijg je enorme fouten.
Gebruik gewoon een fixed point datatype zoals decimal, of als je database dat ondersteunt een money/currency ...

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 16-09 15:42

Sebazzz

3dp

!null schreef op woensdag 30 september 2009 @ 12:10:
Ik kan meerdere redenen bedenken om het niet te doen, maar ik ben benieuwd waarom jullie er nou zo over vallen.
Een floating point is groot en heeft een slechte precisie. Laatst nog een topic waar 35,45 werd afgerond als 35,5 en 36,45 als 36,4. Dat geeft al aan dat je het floating point type niet goed kan vertrouwen. Daarnaast scheelt het ook nog eventuele fouten door het gebruik van komma in plaats van punt als decimaalscheider.

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Het punt is niet zozeer de slechte precisie van floats, want dat zit wel goed. De standaard PHP float heeft 54 bits aan mantissa, wat neerkomt op zo'n 15 decimalen.

Het gaat 'm om twee dingen: de plek van de komma is variabel (oftewel, als je teveel decimalen vóór de komma nodig hebt dan gaat dat ten koste van je centen), en ze werken in basis-2, waardoor je basis-10 getallen niet altijd goed kunt weergeven (om dezelfde reden dat je 1/3 ook niet goed weer kunt geven in basis-10, maar wel heel goed in basis-3, namelijk resp. 0.333333... en 0.1).

Als je de boel gewoon als centen benadert dan heb je effectief een 7.2 fixed point getal in basis-10.

[ Voor 19% gewijzigd door .oisyn op 30-09-2009 12:49 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 22:19

Onbekend

...

Sebazzz schreef op woensdag 30 september 2009 @ 12:18:
[...]

Een floating point is groot en heeft een slechte precisie. Laatst nog een topic waar 35,45 werd afgerond als 35,5 en 36,45 als 36,4. Dat geeft al aan dat je het floating point type niet goed kan vertrouwen. Daarnaast scheelt het ook nog eventuele fouten door het gebruik van komma in plaats van punt als decimaalscheider.
Dit heeft gewoon te maken met een dubbele afronding.

36,45 staat in de database ongeveer zo: 36,44859. Als deze waarde op het scherm getoond wordt, wordt deze afgerond op 2 decimalen. Maar als je dat nog eens wilt afronden, moet je van de weergegeven waarde afronden, en niet van de oorspronkelijke waarde.

Speel ook Balls Connect en Repeat


  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
Toch wel de veiligheidsaspecten die ik dacht (veiligheid van berekeningen), en nog iets meer dan ik kon bedenken ook. Zoals het wegdrukken van centen als het getal te groot wordt, dat is wel ernstig ja. Zeker omdat het onbetrouwbaar / onverstelbaar wordt omdat de basis indd verschilt. Goeie.

Ampera-e (60kWh) -> (66kWh)


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

Zoals een meetwaarde geen integer is, een getal geen datum is, een datum geen tekst is en een tekst geen array van bytes is, is geld geen floating point. Het is niet het type dat bij de grootheid hoort vanwege de eigenschappen.


Een meetwaarde (afstand, temperatuur, hoeveelheid neerslag) is bijvoorbeeld een floating point hoeveelheid (Wanneer er een mililiter water verdampt is dat bij honderd liter water compleet niet relevant, maar bij 2 mililiter heeft het een behoorlijke impact). Kern van de floating point is dat het een heel groot bereik heeft, maar daarbij concessies doet op significantie. Gelukkig is dat binnen de natuurkunde een bekend begrip en kan daar keurig mee gewerkt worden.

Bij een geldbedrag daarintegen is het wel degelijk van belang dat een mutatie van een cent altijd het saldo van een rekening aanpast, ook al loopt het saldo tot over de triljarden. Een geldbedrag is daarom dan ook een perfect voorbeeld van een fixedpoint getal.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Janoz schreef op woensdag 30 september 2009 @ 13:31:
Zoals een meetwaarde geen integer is
Dat ligt er maar aan wat je meet, als ik het aantal auto's meet wat op een weg rijdt dan komt daar als het goed is een integer uit (rare ongelukken uitgezonderd) :+

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

Erkens schreef op woensdag 30 september 2009 @ 13:44:
[...]

Dat ligt er maar aan wat je meet, als ik het aantal auto's meet wat op een weg rijdt dan komt daar als het goed is een integer uit (rare ongelukken uitgezonderd) :+
Eens. Ik had het misschien nog beter op kunnen schrijven als continue meetwaarde om het verschil met een discrete meetwaarde duidelijker aan te geven.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 16-09 15:42

Sebazzz

3dp

Ik kwam een leuke CSS selector tegen bij de code van één van mijn klasgenoten. :+
Cascading Stylesheet:
1
2
3
#nav ul li.hover ul li a {
    ...
}

Hij werkt overigens wel, maar kan in die context een stuk simpeler.

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Janoz schreef op woensdag 30 september 2009 @ 13:31:
Bij een geldbedrag daarintegen is het wel degelijk van belang dat een mutatie van een cent altijd het saldo van een rekening aanpast, ook al loopt het saldo tot over de triljarden. Een geldbedrag is daarom dan ook een perfect voorbeeld van een fixedpoint getal.
Als je me een paar triljard over maakt mag je die 3 cent afwijking houden hoor :+ :>
Sebazzz schreef op woensdag 30 september 2009 @ 16:54:
Ik kwam een leuke CSS selector tegen bij de code van één van mijn klasgenoten. :+
Cascading Stylesheet:
1
2
3
#nav ul li.hover ul li a {
    ...
}

Hij werkt overigens wel, maar kan in die context een stuk simpeler.
Behalve de .hover class itt tot de :hover pseudo-class zie ik niets heel geks :?

[ Voor 30% gewijzigd door RobIII op 30-09-2009 17:01 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 18:00
Hmm... vreemd, de li heeft dus de class: hover? Of had die . daar een : moeten zijn, zodat bij een hoever een bepaalde actie wordt uitgevoerd?

Overigens ziet ik niet zo snel wat daar mis aan is. Wat die doen moet is in het element met id "nav", een wanneer in de ul over een li wordt gehovered (uitgaande dat de . een : moet zijn) een actie uitvoeren op een a in een li in een ul die weer binnen de li valt waarover is gehovered. Een techniek die nog wel eens wordt gebruikt bij CSS dropdown menuutjes.

Wanneer het echter wel een class betreft (dus dat de . geen : moet zijn, voor de pseudo class) dan kunnen in elk geval de #nav en ul ervoor weg. Hetgeen wat daarna staat moet dan waarschijnlijk blijven staan (wel afhankelijk van het doel).

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
jbdeiman schreef op woensdag 30 september 2009 @ 17:01:
Wat die doen moet is in de div nav
Wie zegt dat 't een div is? 't Gaat om 't element met ID "nav" ;)
jbdeiman schreef op woensdag 30 september 2009 @ 17:01:
Wanneer het echter wel een class betreft (dus dat de . geen : moet zijn, voor de pseudo class) dan kunnen in elk geval de #nav en ul ervoor weg
Want? De class "hover" wordt alleen maar toegepast binnen het #nav ul element? Wie weet wordt de hover class nog op andere plekken gebruikt?

[ Voor 50% gewijzigd door RobIII op 30-09-2009 17:09 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 18:00
RobIII schreef op woensdag 30 september 2009 @ 17:07:
[...]

Wie zegt dat 't een div is? 't Gaat om 't element met ID "nav" ;)
Helemaal gelijk... in de snelheid van de reactie zal 'k maar zeggen.

  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 16-09 15:42

Sebazzz

3dp

RobIII schreef op woensdag 30 september 2009 @ 17:00:
Behalve de .hover class itt tot de :hover pseudo-class zie ik niets heel geks :?
Javascript menu. En onbewust heeft de maker zijn applicatie ook nog eens compatible gemaakt met IE6, die alleen een :hover op anchors ondersteunt.

[ Voor 23% gewijzigd door Sebazzz op 30-09-2009 17:53 ]

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

RobIII schreef op woensdag 30 september 2009 @ 17:00:
Als je me een paar triljard over maakt mag je die 3 cent afwijking houden hoor :+ :>
Als mijn bank floats zou gebruiken en de drie cent buiten de range zou vallen dan zou ik met alle liefde enkele triljarden keren 3ct naar je overmaken ;). Behalve dat het me wat tijd kost wordt ik daar niet slechter van.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Janoz schreef op woensdag 30 september 2009 @ 18:10:
[...]

Als mijn bank floats zou gebruiken en de drie cent buiten de range zou vallen dan zou ik met alle liefde enkele triljarden keren 3ct naar je overmaken ;). Behalve dat het me wat tijd kost wordt ik daar niet slechter van.
Deal d:)b
Nu nog even samen een bank zoeken die aan onze voorwaarden voldoet :+

* RobIII begint te mijmeren...
* Yacht...
* Eiland...
* Sportauto's...
* ...

[ Voor 13% gewijzigd door RobIII op 30-09-2009 18:14 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Janoz schreef op woensdag 30 september 2009 @ 18:10:
Als mijn bank floats zou gebruiken en de drie cent buiten de range zou vallen dan zou ik met alle liefde enkele triljarden keren 3ct naar je overmaken ;). Behalve dat het me wat tijd kost wordt ik daar niet slechter van.
Het gaat niet om de range maar om de precisie. 0,03 is geen probleem. ;)

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

De precisie range ;)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • mcDavid
  • Registratie: April 2008
  • Laatst online: 09-09 17:48
RobIII schreef op woensdag 30 september 2009 @ 18:13:
[...]

Deal d:)b
Nu nog even samen een bank zoeken die aan onze voorwaarden voldoet :+

* RobIII begint te mijmeren...
* Yacht...
* Eiland...
* Sportauto's...
* ...
Ik gok zomaar dat je uberhaupt wel eerst even een telefoontje krijgt als je zulke bedragen gaat overmaken :+

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Ook niet
mcDavid schreef op woensdag 30 september 2009 @ 21:02:
Ik gok zomaar dat je uberhaupt wel eerst even een telefoontje krijgt als je zulke bedragen gaat overmaken :+
3 cent? Nee hoor, kan best zonder telefoontjes. :D

[ Voor 94% gewijzigd door Olaf van der Spek op 30-09-2009 21:04 ]


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
Olaf van der Spek schreef op woensdag 30 september 2009 @ 21:03:
Ook niet

[...]

3 cent? Nee hoor, kan best zonder telefoontjes. :D
Huh? Het gaat erom dat als je 100000 keer 3 miljard overmaakt, er dan een paar keer 3 cent blijft zitten in het systeem. Lekker boeiend, qua rente loop je al meer mis door die 3 miljard over te maken :+

Acties:
  • 0 Henk 'm!

  • HeSitated
  • Registratie: April 2009
  • Laatst online: 03-12-2024
Standeman schreef op woensdag 30 september 2009 @ 12:10:
Dat is net zoiets als een datum opslaan als met de kolommen dag, maand, jaar, uur, minuut. Wat ik ooit ook wel eens ben tegengekomen :')
Maar dat heb ik weer liever dan een datum en een tijd veld beide van het type DateTime..... |:(

Waarbij je dus beide bij elkaar op moet tellen om de juiste datum + tijd te krijgen.

[ Voor 11% gewijzigd door HeSitated op 01-10-2009 11:04 ]


Acties:
  • 0 Henk 'm!

  • bat266
  • Registratie: Februari 2004
  • Laatst online: 24-08 06:41
RobIII schreef op woensdag 30 september 2009 @ 18:13:
[...]

Deal d:)b
Nu nog even samen een bank zoeken die aan onze voorwaarden voldoet :+

* RobIII begint te mijmeren...
* Yacht...
* Eiland...
* Sportauto's...
* ...
Ik heb zo waawaawaawaanzinnig gedroomd .....

[ Voor 77% gewijzigd door bat266 op 01-10-2009 11:40 ]

Better to remain silent and be thought a fool then to speak out and remove all doubt.


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

MBV schreef op donderdag 01 oktober 2009 @ 10:45:
[...]

Huh? Het gaat erom dat als je 100000 keer 3 miljard overmaakt, er dan een paar keer 3 cent blijft zitten in het systeem. Lekker boeiend, qua rente loop je al meer mis door die 3 miljard over te maken :+
Nee, andersom. Het gaat er om dat je saldo hoog genoeg is zodat de 3 cent buiten de significantie valt. Het overmaken van de 3ct heeft dan geen invloed op je saldo.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
HeSitated schreef op donderdag 01 oktober 2009 @ 11:03:
[...]

Maar dat heb ik weer liever dan een datum en een tijd veld beide van het type DateTime..... |:(

Waarbij je dus beide bij elkaar op moet tellen om de juiste datum + tijd te krijgen.
Hoe bedoel je? Ben je niet bekend met dat je kunt rekenen met tijden in je DB ?

Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
SQL:
1
2
3
4
5
6
SELECT x,y,z FROM tablex
ORDER BY date;
-- of:
SELECT x, y, z 
FROM tablex
ORDER BY (date + time);

En dan heb ik het niet over performance, en de 5% van de keren dat je vergeet om de tijd toe te voegen aan de datum.

Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
MBV schreef op donderdag 01 oktober 2009 @ 14:46:
SQL:
1
2
3
4
5
6
SELECT x,y,z FROM tablex
ORDER BY date;
-- of:
SELECT x, y, z 
FROM tablex
ORDER BY (date + time);

En dan heb ik het niet over performance, en de 5% van de keren dat je vergeet om de tijd toe te voegen aan de datum.
Toch is er veel voor te zeggen om het tijd in een apart veld op te kunnen slaan. Microsoft heeft dat met de introductie van SQL Server 2008 ook ingezien. Als ik een query wil draaien om alle records van een bepaalde tijd (ongeacht de datum) terug te krijgen moet ik ranzige dingen doen. Het gaat erom dat de ontwikkelaar zelf de keuze heeft om datum en tijd apart op te slaan afhankelijk van het doel van de betreffende kolom. Bij SQL Server voor 2008 was dit niet mogelijk en had je altijd een datum bij een tijd en andersom.

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

  • Canaria
  • Registratie: Oktober 2001
  • Niet online

Canaria

4313-3581-4704

P_de_B schreef op donderdag 01 oktober 2009 @ 14:51:
[...]

Toch is er veel voor te zeggen om het tijd in een apart veld op te kunnen slaan. Microsoft heeft dat met de introductie van SQL Server 2008 ook ingezien. Als ik een query wil draaien om alle records van een bepaalde tijd (ongeacht de datum) terug te krijgen moet ik ranzige dingen doen. Het gaat erom dat de ontwikkelaar zelf de keuze heeft om datum en tijd apart op te slaan afhankelijk van het doel van de betreffende kolom. Bij SQL Server voor 2008 was dit niet mogelijk en had je altijd een datum bij een tijd en andersom.
Eens, je kunt in een DateTime de time-component nu eenmaal niet op NULL zetten, en de waarde 00:00 vertegenwoordigt ook een tijd. In ieder geval heb ik wel eens de tijd en datum apart opgeslagen, beide in DateTime-velden.

C# heeft ook een DateTime.Date property.

Apparticle SharePoint | Apps | Articles


Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Je kunt, in MySQL iig, ook alleen de datum of alleen de tijd terugvragen van een DATETIME veld.

Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Canaria schreef op donderdag 01 oktober 2009 @ 15:08:
[...]

In ieder geval heb ik wel eens de tijd en datum apart opgeslagen, beide in DateTime-velden.
In SQL Server < 2008 kon dat dus niet. Als je geen datum meegaf met een tijd werd de datum 1-1-1900.

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

  • Canaria
  • Registratie: Oktober 2001
  • Niet online

Canaria

4313-3581-4704

P_de_B schreef op donderdag 01 oktober 2009 @ 15:38:
[...]

In SQL Server < 2008 kon dat dus niet. Als je geen datum meegaf met een tijd werd de datum 1-1-1900.
Dat maakte op zich niet zo veel uit. In dat veld was alleen de tijd significant (werd gebruikt om het dagdeel te bepalen), de datumcomponent werd genegeerd, al kwam die toevallig wel altijd overeen met de waarde in het datumveld.
Was er geen tijd maar alleen een datum, dan was het tijdveld dus leeg.

Apparticle SharePoint | Apps | Articles


Acties:
  • 0 Henk 'm!

Verwijderd

Leuk topic dit, kwam zelf net nog wat van mezelf tegen van een tijdje terug (paar jaar..):
HTML:
1
2
3
4
5
<table>
    <td class="header">
        ....
    </td>
</table>


8)7

Acties:
  • 0 Henk 'm!

  • mcdronkz
  • Registratie: Oktober 2003
  • Laatst online: 16-04 12:44
Dat lijkt me meer iets voor het webdesign forum ;). Je staat overigens niet alleen, ik zie de meest rare HTML/CSS constructies voorbijkomen terwijl er ook een simpele tag voor gebruikt had kunnen worden. Maar goed, vind je het gek, er zijn waanzinnig veel tags, je kunt niet alles weten.

Acties:
  • 0 Henk 'm!

Verwijderd

mcdronkz schreef op maandag 05 oktober 2009 @ 02:51:
Dat lijkt me meer iets voor het webdesign forum ;). Je staat overigens niet alleen, ik zie de meest rare HTML/CSS constructies voorbijkomen terwijl er ook een simpele tag voor gebruikt had kunnen worden. Maar goed, vind je het gek, er zijn waanzinnig veel tags, je kunt niet alles weten.
Ohja, nou je het zegt... Maar zit daar nooit, vandaar dat ik het hier plaatste. :P

Maar is van een aantal jaar geleden, snap nu echt niet dat ik dat niet wist toen, maar zal binnenkort eens wat oude sites uit de backup halen, daar zit ook wel het een en andere aan PHP stuff die hier thuis hoort. :P

Acties:
  • 0 Henk 'm!

  • _Noldy
  • Registratie: September 2009
  • Laatst online: 06-07 14:33
Op mijn huidige werkadres werken we met VBscript. De code post ik niet maar wel het commentaar van mijn voorganger :):

'Tell recordset to split records in the pages of our size.
if rs.eof then
'behoorlijke crappy oplossing maar gebeurt toch alleen de allereerste keer maar, voel je vrij om het netter te doen

Het werk van deze creatieveling heeft een plekje aan onze wall op shame verdient.

EDIT: de ene regel code ziet er nog niet zo slecht uit maar het commentaar verklaart weinig goeds.

[ Voor 11% gewijzigd door _Noldy op 05-10-2009 11:04 . Reden: verduidelijking ]


Acties:
  • 0 Henk 'm!

  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Niet echt foute code, maar wel enorme denkfout die ik maakte was dat je wel even een find/replace op een Text field kon doen in Sqlserver, in 1 keer was alle content op honderden websites afgekapt tot 4096 tekens :)

Gelukkig was ik zo slim geweest om wel even backup te maken voor ik die replace deed ;)

Acties:
  • 0 Henk 'm!

  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 22:11
Cartman! schreef op donderdag 01 oktober 2009 @ 15:35:
Je kunt, in MySQL iig, ook alleen de datum of alleen de tijd terugvragen van een DATETIME veld.
Dat kan ja, maar als je erop wilt selecten resulteert dat in een full table scan, wat ranzig traag is met een database met miljoenen records.

Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
Views, indices, dat soort dingen? Oh wacht, MySQL :+

Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
MBV schreef op maandag 05 oktober 2009 @ 16:49:
Views, indices, dat soort dingen? Oh wacht, MySQL :+
Dat kan in MS SQL ook niet :). Alleen de datum of alleen de tijd van een DateTime opvragen vereist het gebruik van een functie. Dat betekent dat er geen index gebruikt kan worden en er dus een table scan gedaan moet worden.

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
P_de_B schreef op maandag 05 oktober 2009 @ 16:52:
[...]

Dat kan in MS SQL ook niet :). Alleen de datum of alleen de tijd van een DateTime opvragen vereist het gebruik van een functie. Dat betekent dat er geen index gebruikt kan worden en er dus een table scan gedaan moet worden.
Met een materialized view toch wel? :P

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
RobIII schreef op maandag 05 oktober 2009 @ 16:53:
[...]

Met een materialized view toch wel? :P
Nee hoor, je moet toch nog steeds een functie toepassen om _alleen_ de tijd terug te krijgen van een DateTime? Of je moet in de view het datatype aanpassen naar een string, maar ik hoef je denk ik niet uit te leggen dat dat een minder goed idee is ;) Als de view een DateTime teruggeeft is er niks veranderd.

Pas in SQL2K8 is het mogelijk alleen een tijd of datum op te slaan.

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
P_de_B schreef op maandag 05 oktober 2009 @ 16:56:
Nee hoor, je moet toch nog steeds een functie toepassen om _alleen_ de tijd terug te krijgen van een DateTime?
Maar die (enkel) date of time kun je dan toch in de materialized versie stoppen?
P_de_B schreef op maandag 05 oktober 2009 @ 16:56:
Of je moet in de view het datatype aanpassen naar een string
En waarom dan niet gewoon naar een date of time? (Ik heb 't wel even over RDBMS'en die dus én materialized views én "losse" date en/of time velden ondersteunen.
P_de_B schreef op maandag 05 oktober 2009 @ 16:56:
Pas in SQL2K8 is het mogelijk alleen een tijd of datum op te slaan.
Dat zeg ik :)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

P_de_B schreef op maandag 05 oktober 2009 @ 16:56:
[...]

Nee hoor, je moet toch nog steeds een functie toepassen om _alleen_ de tijd terug te krijgen van een DateTime?
Ja, en dat kan toch gewoon bij het updaten van de index? Oftewel, je kunt toch een index maken op GET_TIME(date) ipv alleen op date (geen idee of die functie ook zo heet trouwens)
Ik ken MS SQL verder niet, maar jij doet nu alsof het überhaupt een theoretische onmogelijkheid is :)

Overigens, wat krijg je terug met GET_TIME() als er geen apart time object bestaat? Waarschijnlijk een datetime, met de datum gezet naar iets als 1-1-1900. Op het moment dat je een view hebt van je data met een datetime kolom dat GET_TIME(date) is, moet je niet in je query alsnog een GET_TIME() daarop doen, maar gewoon selecteren op iets als BETWEEN 1-1-1900 12:00 AND 1-1-1900 13:00

[ Voor 41% gewijzigd door .oisyn op 05-10-2009 17:07 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
RobIII schreef op maandag 05 oktober 2009 @ 16:59:
(Ik heb 't wel even over RDBMS'en die dus én materialized views én "losse" date en/of time velden ondersteunen.
Maar daar hadden we het hierboven niet over, vandaar dat ik dat puntje noemde. Vanaf 2K8 heb je gelijk :)

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
P_de_B schreef op maandag 05 oktober 2009 @ 17:01:
[...]

Maar daar hadden we het hierboven niet over, vandaar dat ik dat puntje noemde. Vanaf 2K8 heb je gelijk :)
Nee, OK. Dan begrijpen we mekaar. Anders had ik je moeten komen meppen :P :+

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
.oisyn schreef op maandag 05 oktober 2009 @ 17:00:
[...]

Ja, en dat kan toch gewoon bij het updaten van de index? Oftewel, je kunt toch een index maken op GET_TIME(date) ipv alleen op date (geen idee of die functie ook zo heet trouwens)
Ik ken MS SQL verder niet, maar jij doet nu alsof het überhaupt een theoretische onmogelijkheid is :)
Die functie is er dus net (pre 2008). GET_TIME zou een datatype TIME op moeten leveren en die bestaat niet (pre 2008) De enige opties vziw zijn een convert naar een char zijn die alleen de tijd overlaat of iets creatiefs met DATEADD die zorgt dat je datum altijd 1-1-1900 is. Natuurlijk kun je daarmee prima queries zoals je hieronder aangeeft, maar alleen de tijd teruggeven is dus niet zo eenvoudig (pre 2008)
Overigens, wat krijg je terug met GET_TIME() als er geen apart time object bestaat? Waarschijnlijk een datetime, met de datum gezet naar iets als 1-1-1900. Op het moment dat je een view hebt van je data met een datetime kolom dat GET_TIME(date) is, moet je niet in je query alsnog een GET_TIME() daarop doen, maar gewoon selecteren op iets als BETWEEN 1-1-1900 12:00 AND 1-1-1900 13:00

Oops! Google Chrome could not find www.rijks%20museum.nl


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
Tja, dan moet je in die materialized view de tijd gewoon formatteren als een integer tussen 001 en 2359, en daar je queries op los laten. Net zoals je IP's in MySQL als integer kan opslaan.

Acties:
  • 0 Henk 'm!

  • Standeman
  • Registratie: November 2000
  • Laatst online: 15:28

Standeman

Prutser 1e klasse

Weer een leuke bug gevonden in de code. Deze heeft vziw nog geen problemen opgeleverd, maar dat is imo slechts een kwestie van tijd.

Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
  public boolean Foo(Bar bar) throws ModelControllerException
  {
    boolean result = true;
    FooDAO dao = null;
    DAOFactory daoFactory;
   
    try
    {
      daoFactory = DAOFactory.getDAOFactory(DAOFactory.DBMS);
      dao = daoFactory.loadFooDAO();

      result = dao.addBar(bar);
     
      if (result)
      {
        dao.commit();
      }
      else
      {
        dao.rollback();
      }
    }
    catch(DataAccessException dax)
    {
      log.error(dax.getMessage());
      dao.rollback();
      throw new ModelControllerException(dax);
    }
    finally
    {
      if (dao != null)
      {
        dao.close();
      }
    }
   
    return result;
  }


10 punten voor de eerste die het ziet :)

The ships hung in the sky in much the same way that bricks don’t.


Acties:
  • 0 Henk 'm!

  • roeleboel
  • Registratie: Maart 2006
  • Niet online

roeleboel

en zijn beestenboel

als
Java:
1
2
daoFactory = DAOFactory.getDAOFactory(DAOFactory.DBMS); 
dao = daoFactory.loadFooDAO(); 

mislukt komt er een niet opgevangen nullpointer?

[ Voor 11% gewijzigd door roeleboel op 15-10-2009 15:17 ]


Acties:
  • 0 Henk 'm!

  • jAnO!
  • Registratie: Januari 2002
  • Laatst online: 28-01 13:12

jAnO!

lalalavanillevla

roeleboel schreef op donderdag 15 oktober 2009 @ 15:16:
als
Java:
1
2
daoFactory = DAOFactory.getDAOFactory(DAOFactory.DBMS); 
dao = daoFactory.loadFooDAO(); 

mislukt komt er een niet opgevangen nullpointer?
tja, maar dan kan je praktisch alles in try/catch hangen. Niet de WTF denk ik.

hmm..
Als de dao.rollback exceptie geeft, doe je die call nog een keer? bedoel je dat?

[ Voor 23% gewijzigd door jAnO! op 15-10-2009 15:24 ]

When some people work at a place for ten years they get ten years of experience, other people work at a place for ten years and get one year of experience ten times.


Acties:
  • 0 Henk 'm!

  • !null
  • Registratie: Maart 2008
  • Laatst online: 22:07
Of dat hij tweemaal een dao.rollback() kan doen?
Weet niet of dat schadelijk is, ik ken die objecten niet, weet de context niet.

Ik bedoel, als de rollback() fout gaat, een exceptie gooit, en je gaat dan wederom een rollback() krijg je neem ik aan een onafgehandelde exceptie?

[ Voor 36% gewijzigd door !null op 15-10-2009 15:24 ]

Ampera-e (60kWh) -> (66kWh)


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

Nou heb ik geen verstand van DAO's in java, maar wellicht dat commit() of de rollback() óók een DataAccessException kan gooien, waarna je in de catch een rollback doet op dat object waarna je weer zo'n exception krijgt, die dan dus doorrippelt naar de applicatie ipv dat hij gewrapt wordt in een ModelControllerException?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • jAnO!
  • Registratie: Januari 2002
  • Laatst online: 28-01 13:12

jAnO!

lalalavanillevla

.oisyn schreef op donderdag 15 oktober 2009 @ 15:24:
Nou heb ik geen verstand van DAO's in java, maar wellicht dat commit() of de rollback() óók een DataAccessException kan gooien, waarna je in de catch een rollback doet op dat object waarna je weer zo'n exception krijgt, die dan dus doorrippelt naar de applicatie ipv dat hij gewrapt wordt in een ModelControllerException?
Dan moet het een runtime exceptie zijn, want anders kan het niet compilen... tenzij die extends van ModelControllerException...

When some people work at a place for ten years they get ten years of experience, other people work at a place for ten years and get one year of experience ten times.


Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 17:15

Haan

dotnetter

Ik moest onderhoud plegen aan een .Net web service met een stuk of 10 web methods. Alle code bleek te zitten in 1 grote file van bijna 2500 regels :')

Daarin zat dus alle business logica, helper methods, enumerations, de webmethods zelf, en een waslijst aan classjes voor de requests/responses voor iedere web method -O-

Na wat refactoring nog een file van 1200 regels over en de rest van de code opnieuw ingedeeld in logische bestanden.

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

jAnO! schreef op donderdag 15 oktober 2009 @ 15:26:
[...]


Dan moet het een runtime exceptie zijn, want anders kan het niet compilen... tenzij die extends van ModelControllerException...
http://static.springsourc.../DataAccessException.html
Dát had ik dan al wel weer opgezocht ;)

[ Voor 5% gewijzigd door .oisyn op 15-10-2009 15:39 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Standeman
  • Registratie: November 2000
  • Laatst online: 15:28

Standeman

Prutser 1e klasse

!null schreef op donderdag 15 oktober 2009 @ 15:22:
Of dat hij tweemaal een dao.rollback() kan doen?
Weet niet of dat schadelijk is, ik ken die objecten niet, weet de context niet.

Ik bedoel, als de rollback() fout gaat, een exceptie gooit, en je gaat dan wederom een rollback() krijg je neem ik aan een onafgehandelde exceptie?
rollBack() gooit in principe geen Exceptions.

Algemene tip: probeer iets minder technisch te kijken en iets meer functioneel
We gebruiken (heelaas nog steeds) geen spring. DataAccessException in dit geval ons eigen brouwsel.
Haan schreef op donderdag 15 oktober 2009 @ 15:37:
Ik moest onderhoud plegen aan een .Net web service met een stuk of 10 web methods. Alle code bleek te zitten in 1 grote file van bijna 2500 regels :')

Daarin zat dus alle business logica, helper methods, enumerations, de webmethods zelf, en een waslijst aan classjes voor de requests/responses voor iedere web method -O-

Na wat refactoring nog een file van 1200 regels over en de rest van de code opnieuw ingedeeld in logische bestanden.
Ik heb hier ook nog een paar van dat soort classes. Ik heb nog niet de moed of de tijd gehad om ze aan te pakken :/

[ Voor 52% gewijzigd door Standeman op 15-10-2009 15:45 ]

The ships hung in the sky in much the same way that bricks don’t.


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 15:29
waarom doe je die rollback überhaupt? addBar geeft false terug, ik neem aan dat je het resultaat dan ook moet committen?

Acties:
  • 0 Henk 'm!

  • Dnomaid
  • Registratie: Augustus 2003
  • Laatst online: 15-09 16:02
code:
1
result = dao.addBar(bar);

als addBar een exception throwt, geef je gewoon true terug, en dat kan de bedoeling niet zijn?

Edit: verduidelijkt.

[ Voor 60% gewijzigd door Dnomaid op 15-10-2009 15:50 ]


Acties:
  • 0 Henk 'm!

  • Standeman
  • Registratie: November 2000
  • Laatst online: 15:28

Standeman

Prutser 1e klasse

MBV schreef op donderdag 15 oktober 2009 @ 15:45:
waarom doe je die rollback überhaupt? addBar geeft false terug, ik neem aan dat je het resultaat dan ook moet committen?
Als ik even in implementatie van de DAO spiek, dan krijg je false terug wanneer de update count kleiner is dan 1.

The ships hung in the sky in much the same way that bricks don’t.


Acties:
  • 0 Henk 'm!

  • jAnO!
  • Registratie: Januari 2002
  • Laatst online: 28-01 13:12

jAnO!

lalalavanillevla

BobbyD82 schreef op donderdag 15 oktober 2009 @ 15:46:
Bij een exception krijg je gewoon true terug?
nee, want bij een exception wordt een nieuwe exception gegooid en bereik je nooit het return statement.

When some people work at a place for ten years they get ten years of experience, other people work at a place for ten years and get one year of experience ten times.

Pagina: 1 ... 15 ... 103 Laatste

Dit topic is gesloten.

Let op:
Uiteraard is het in dit topic niet de bedoeling dat andere users en/of topics aangehaald worden om ze voor gek te zetten. Lachen om je eigen code, of over dingen die je "wel eens tegengekomen bent" is prima, maar hou het onderling netjes. :)