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.
Hij heeft ook niet vermeld wie van beide partijen een winning streak had.oisyn schreef op dinsdag 25 juni 2013 @ 13:02:
Wel grappig dat je dan geld van de bank nodig hebt tijdens een winning streak
Hij was vrouwen aan het scoren.oisyn schreef op dinsdag 25 juni 2013 @ 13:02:
Wel grappig dat je dan geld van de bank nodig hebt tijdens een winning streak

Er zitten features in die voor jou je crash-dump analyseren en de handleiding is enorm gedetailleerd
Voor de .netters:
[YouTube: http://www.youtube.com/watch?v=yVzNrz1jJHU]
En native:
Op het moment dat die input er niet is, zou je dan eerst met isset(); moeten checken of de input er wel is? Checken of de input leeg is of niet correct gebeurd later, dit is puur input asignen aan een variabele.
/me Notice: Undefined index: status in /chroot/home/***/***.nl/html/wp-content/themes/***/ideal-gateway.php on line 3
---
De regels rondom iDeal zijn wel streng geworden zeg. Eerder hoefde je er echt niks voor te doen, later kwamen sommige providers al eens met kvk/btw gegevens en contracten. Nu heb je legitimatieplicht en moet je een waslijst aan gegevens invullen. Daarnaast willen ze van tevoren graag je webshop zien
Je eerste check is dus wat de reguest method is, dan valideren of het request compleet is en tot slot valideren of de input correct is.
*edit*: Dat valideren doe je dus al, nu nog de eerste 2 stappen
[ Voor 7% gewijzigd door StM op 25-06-2013 14:23 ]
Zijn nu aan het kijken naar BIRT maar misschien heeft iemand hier het gouden ei wel
"Write code as if the next maintainer is a vicious psychopath who knows where you live."
Wellicht http://www.pentaho.com/ interessant?Ozzie schreef op dinsdag 25 juni 2013 @ 14:25:
Weet iemand nog een leuke/makkelijke library om raportages mee te doen in Java? We zijn aan het bedenken welke technologieen we gaan gebruiken voor een nieuw project.
Zijn nu aan het kijken naar BIRT maar misschien heeft iemand hier het gouden ei wel
5,8% hier.... ik wil niet eens uitrekenen wat me dat op jaarbasis extra kosten, ondanks dat we niet een heel hoge hypotheek hebbenGateKeaper schreef op dinsdag 25 juni 2013 @ 14:54:
Pfffff... hypotheekrente staat wel heel laag nu. Kom ik aan met 5,4% rente.
Lekker huren in de vrije sector... doei geldjes!
[ Voor 24% gewijzigd door phex op 25-06-2013 15:00 ]
Echt om ziek van te worden. Zal eens kijken wat de boete is op vroegtijdig overstappen en kijken of 't uit kan.
* D-Raven laat zich niet gekmaken, de rente's gaan vanzelf wel weer omhoog
Zo:pdebie schreef op dinsdag 25 juni 2013 @ 10:07:
Zit net even wat suggestions van Resharper te bekijken en een daarvan is: invert 'if' to reduce nesting.
http://confluence.jetbrai...rt+'if'+to+reduce+nesting
Zij zeggen dat dit:
C#:
1 2 3 4 5 6 void PrintName(Person p) { if (p == null) return if (p.Name == null) return; Console.WriteLine(p.Name); }
Leesbaarder is dan:
C#:
1 2 3 4 5 6 7 8 9 10 void PrintName(Person p) { if (p != null) { if (p.Name != null) { Console.WriteLine(p.Name); } } }
Het zijn minder regels code, maar leesbaarder? Verschilt per persoon denk ik, maar ik pas vaker optie 2 toe dan optie 1, omdat ik dan sneller de 'flow' van de functie zie.
Hoe passen jullie dit toe?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| void PrintName(Person p) { if (p == null) { return; } if (p.Name == null) { return; } Console.WriteLine(p.Name); } |
Reden:
Eerst input validatie (ik throw hier ook vaker ArgumentExceptions als ik vind dat een niet ingelogde gebruiker niet zou moeten kunnen printen en een ingelogde gebruiker altijd een naam moet hebben). Voor mij zijn het uitzonderingen (ook bij een return) en daarom springen ze in.
Passeer je de validatie, dan zit je nog steeds in de normal flow van de functie dus ga je recht naar beneden. Met name bij wat grotere code blokken die volgen op de initiële validatie is het prettiger als het ook niet (dubbel) ingesprongen is.
Ga je een probleem krijgen bij early returns omdat je nog wel wat anders moet doen in een functie (if x elseif y else z) dan is dat een soort van code smell dat je functie wellicht meer dan één ding probeert te doen en wellicht beter een soort van initiële delegatie kan doen.
Daarom zijn early returns of ArgumentExceptions dingen waar ik zelf graag mee werk, zo gauw het moeilijk wordt daardoor weet je gewoon dat je moet gaan refactoren.
Ik zou het ook in één regel kunnen doen maar zeker in het geval van ArgumentExceptions wil ik specifiek de variabele er uit pikken waar het fout gaat. Maar met early returns en twee simpele checks kan het ook wel samen.
[ Voor 5% gewijzigd door BikkelZ op 25-06-2013 15:08 ]
iOS developer
Kost weer veel te veel tijd, ben niks opgeschoten...

Dan weten we tenminste waar we aan toe zijn de komende 20 jaar, waarna er zo weinig over is van de hypotheek dat het toch niet zoveel meer uitmaakt. Tevens gaan ze echt wel weer een keer stijgen, dus laat je vooral niet gek maken.
iemand bij benadering een idee wat die afkoopboetes zijn? meer dan 10% van de waarde?
Reden, multiple returns vs geen return.. Ik zelf zou ook de laatste gebruiken.BikkelZ schreef op dinsdag 25 juni 2013 @ 15:07:
[...]
Zo:
C#:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 void PrintName(Person p) { if (p == null) { return; } if (p.Name == null) { return; } Console.WriteLine(p.Name); }
Driving a cadillac in a fool's parade.
Hangt er helemaal van af wat voor hypotheek je hebt. Volgens mij heb je juist bij veel aflossingsvrije hypotheken een clausule dat je onbeperkt boetevrij mag aflossen, om bijvoorbeeld in één keer een erfenis in je huis pompen in plaats van iedere maand een beetje. Gewoon even je hypotheekakte lezen, dat lijken veel kleine lettertjes te zijn maar meestal met een beetje moeite is het voor een leek wel te ontcijferen.Kips schreef op dinsdag 25 juni 2013 @ 15:12:
scheelt wel een slok op een borrel...
iemand bij benadering een idee wat die afkoopboetes zijn? meer dan 10% van de waarde?
Of je belt je hypotheekadviseur. Die heeft het vást niet druk momenteel

Wat bedoel je?kwaakvaak_v2 schreef op dinsdag 25 juni 2013 @ 15:13:
Reden, multiple returns vs geen return.. Ik zelf zou ook de laatste gebruiken.
[ Voor 12% gewijzigd door BikkelZ op 25-06-2013 15:21 ]
iOS developer
Ons is verteld dat dat vaak afhangt van de rentestand. Als jij nu meer betaalt dan de rente, zul je een boete krijgen, aangezien de bank dan 'verlies' lijdt op dat bedrag (ze lenen dat geld wat jij afbetaald, immers tegen een lagere rente aan iemand anders). Als de rentes hoger zijn, is het schijnbaar minder een probleem, want dan komt er geld vrij dat tegen een hogere rente uitgeleend kan worden (a.k.a. profit).Kips schreef op dinsdag 25 juni 2013 @ 15:12:
scheelt wel een slok op een borrel...
iemand bij benadering een idee wat die afkoopboetes zijn? meer dan 10% van de waarde?
^^ althans, zo begreep ik het van onze hypotheekadviseur
Mijn rentevaste periode van 10 jaar (4%) loopt af in 2015. Zoals het er nu naaruit ziet kan ik dan gewoon wéér een hele lage rente krijgen en wederom enorme stijgingen passeren in de 10 jaar die volgenD-Raven schreef op dinsdag 25 juni 2013 @ 15:04:
ik zit net een jaar met mn hypotheek, op 4.3% 10 jaar vast.
* D-Raven laat zich niet gekmaken, de rente's gaan vanzelf wel weer omhoog
Wel hebben we daarnaast nog een extra verbouwingshypotheek van 50k die we 2 jaar geleden hebben afgesloten met 5,2% rente (geen NHG door aangescherpte regels

* 5,2% met 52% HRA is effectief 2,5%, maar als ik die 50k op een bankrekening heb dan moet ik daar ook weer 1,2% vermogensbelasting over betalen, dus het moet dus minimaal 3,7% renderen om break even te draaien)
Hangt idd van je hypotheek af, maar meestal is het zo dat je sowieso altijd een deel kostevrij kunt aflossen, en daarnaast geheel kostevrij kunt aflossen als de huidige rentestand hoger is, en anders betaal je het verschil in rente tov een vergelijkbare hypotheek met de resterende looptijd.Kips schreef op dinsdag 25 juni 2013 @ 15:12:
scheelt wel een slok op een borrel...
iemand bij benadering een idee wat die afkoopboetes zijn? meer dan 10% van de waarde?
Stel je hebt een hypotheek van 200k met 10 jaar vast 5% en een resterende looptijd van 7 jaar. En stel dat de huidige rente voor een 7 jaar vaste periode bij dezelfde bank momenteel 4% is. En stel ook dat je 15% kosteloos kunt aflossen.
30k is dus boetevrij. Dan zijn de extra kosten dus 7 jaar 1% over 170k = 11.9k.
Dit dus. Ze zijn nu verzekerd van jouw rente, maar als je gaat aflossen niet meer. En als de rentestand lager is dan kunnen ze dat geld wel opnieuw uitlenen, maar levert dat ze minder op. Dit kun je dus afkopen door het verschil op te hoesten, vandaar bovenstaande berekening.Hoogie2004 schreef op dinsdag 25 juni 2013 @ 15:25:
[...]
Ons is verteld dat dat vaak afhangt van de rentestand. Als jij nu meer betaalt dan de rente, zul je een boete krijgen, aangezien de bank dan 'verlies' lijdt op dat bedrag (ze lenen dat geld wat jij afbetaald, immers tegen een lagere rente aan iemand anders). Als de rentes hoger zijn, is het schijnbaar minder een probleem, want dan komt er geld vrij dat tegen een hogere rente uitgeleend kan worden (a.k.a. profit).
^^ althans, zo begreep ik het van onze hypotheekadviseur
[ Voor 26% gewijzigd door .oisyn op 25-06-2013 15:37 ]
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.
1
2
3
4
5
6
7
8
9
| void PrintName(Person p) { if (p == null || p.Name == null) { return; } Console.WriteLine(p.Name); } |
of:
1
2
3
4
5
6
7
| void PrintName(Person p) { if (p != null && p.Name != null) { Console.WriteLine(p.Name); } } |
Ik ben er nog niet uit welke van de twee ik zou kiezen.
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.
Populaire onderwerpen: Ervaring, Hypotheek, Koopwoning, Huis, Ict-sector, Consultancy
Besefte me pas een paar dagen terug dat het bedrag dat ik iedere maand betaal niet zoals huur is dat iedere maand "verdwijnt" en als ik het huis zou verkopen voor dezelfde prijs, dat ik dan het ingelegde geld "terug krijg" (m.u.v. alle eenmalige kosten)
[ Voor 24% gewijzigd door Gamebuster op 25-06-2013 15:42 ]
Let op: Mijn post bevat meningen, aannames of onwaarheden
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
| void PrintName(Person p) { if (p == null || String.IsNullOrWhiteSpace(p.Name)) { Exception haxjes; var getalletje = new Random((int)DateTime.Now.Ticks).Next(1, 10); switch(getalletje % 10) { case 1: case 4: case 6: haxjes = new IOException(); break; case 2: case 9: haxjes = new ArgumentOutOfRangeException(); break; case 3: haxjes = new WebException(); break; default: haxjes = new Exception(); break; } throw haxjes; } Console.WriteLine(p.Name); } |
Succes
We are shaping the future
Dus hypotheken zijn enkel voor oude lullen? Ik kocht al op m'n 21steEalanrian schreef op dinsdag 25 juni 2013 @ 15:40:
Zeg kunnen jullie die discussie over Hypotheken niet houden op een ouwe lullen platform?* Ealanrian runs
Van 40+ verwacht ik dat ze zich er wel thuis in voelen, en toch vaker al aan hun 2é verlenging toe zijn.
Heb je niet zoiets in C#:Daos schreef op dinsdag 25 juni 2013 @ 15:37:
Ik zou het samenvoegen:
C#:
1 2 3 4 5 6 7 8 9 void PrintName(Person p) { if (p == null || p.Name == null) { return; } Console.WriteLine(p.Name); }
of:
C#:
1 2 3 4 5 6 7 void PrintName(Person p) { if (p != null && p.Name != null) { Console.WriteLine(p.Name); } }
Ik ben er nog niet uit welke van de twee ik zou kiezen.
1
2
3
4
| void PrintName(Person p) { (p != null ? System.out.println(p.getName) : null) } |
"Write code as if the next maintainer is a vicious psychopath who knows where you live."
gadverdamme kerel. doe het dan meteen goedOzzie schreef op dinsdag 25 juni 2013 @ 15:43:
[...]
Heb je niet zoiets in C#:
Java:
1 2 3 4 void PrintName(Person p) { (p != null ? System.out.println(p.getName) : null) }
1
| p == null || System.out.println(p.getName()) |
[ Voor 16% gewijzigd door Gamebuster op 25-06-2013 15:44 ]
Let op: Mijn post bevat meningen, aannames of onwaarheden
Euh, nee hoor. Je betaalt rente, en die rente verdwijnt gewoon.Gamebuster schreef op dinsdag 25 juni 2013 @ 15:41:
Ik heb nu voor een half jaar lang een hypotheek lopen met 4.1%
Besefte me pas een paar dagen terug dat het bedrag dat ik iedere maand betaal niet zoals huur is dat iedere maand "verdwijnt" en als ik het huis zou verkopen voor dezelfde prijs, dat ik dan het ingelegde geld "terug krijg" (m.u.v. alle eenmalige kosten)
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.
.oisyn schreef op dinsdag 25 juni 2013 @ 15:38:
Ja zeg kunnen jullie die discussie over IFs niet verplaatsen naar een ongerelateerd forum? We hebben het hier over hypotheken!
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.
Je bent je ervan bewust dat die 2 stukjes niet hetzelfde doen?Daos schreef op dinsdag 25 juni 2013 @ 15:37:
Ik zou het samenvoegen:
C#:
1 2 3 4 5 6 7 8 9 void PrintName(Person p) { if (p == null || p.Name == null) { return; } Console.WriteLine(p.Name); }
of:
C#:
1 2 3 4 5 6 7 void PrintName(Person p) { if (p != null && p.Name != null) { Console.WriteLine(p.Name); } }
Ik ben er nog niet uit welke van de twee ik zou kiezen.
.oisyn schreef op dinsdag 25 juni 2013 @ 15:43:
[...]
Euh, nee hoor. Je betaalt rente, en die rente verdwijnt gewoon.
reality hits you hard, bro
stomme rente, stomme banken, kunnen ze niet even gratis een ton uitlenen ofzo
[ Voor 21% gewijzigd door Gamebuster op 25-06-2013 15:46 ]
Let op: Mijn post bevat meningen, aannames of onwaarheden
Indeed... een veel gemaakte denkfout. Enkel de aflossing, vaak slechts +/- 100 tot 150 euro per maand los je af. Een veelvoud daarvan verdampt toch echt gaat richting de bank als verschuldigde rente..oisyn schreef op dinsdag 25 juni 2013 @ 15:43:
[...]
Euh, nee hoor. Je betaalt rente, en die rente verdwijnt gewoon.
Wat doen ze anders dan?steffex schreef op dinsdag 25 juni 2013 @ 15:44:
[...]
Je bent je ervan bewust dat die 2 stukjes niet hetzelfde doen?
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.
hmm, niet helemaal mee eens... ruim 2/3e van je maandbedrag gaat toch richting de bank in de vorm van rente, dat verdwijnt dan toch ook?Gamebuster schreef op dinsdag 25 juni 2013 @ 15:41:
Ik heb nu voor een half jaar lang een hypotheek lopen met 4.1%
Besefte me pas een paar dagen terug dat het bedrag dat ik iedere maand betaal niet zoals huur is dat iedere maand "verdwijnt" en als ik het huis zou verkopen voor dezelfde prijs, dat ik dan het ingelegde geld "terug krijg" (m.u.v. alle eenmalige kosten)
dat kan wel in C# voor zo ver ik weet....Ozzie schreef op dinsdag 25 juni 2013 @ 15:43:
[...]
Heb je niet zoiets in C#:
Java:
1 2 3 4 void PrintName(Person p) { (p != null ? System.out.println(p.getName) : null) }
En die aflossing is ook geen voordeel van het kopen van een woning, want als je huurt kun je net zo goed elke maand eenzelfde bedrag opzij zetten, en dan heb je na 30 jaar ook een flink bedrag gespaard.GateKeaper schreef op dinsdag 25 juni 2013 @ 15:45:
[...]
Indeed... een veel gemaakte denkfout. Enkel de aflossing, vaak slechts +/- 100 tot 150 euro per maand los je af. Een veelvoud daarvan verdampt toch echt gaat richting de bank als verschuldigde rente.
Ik snap het argument van mensen dat huren geld weg gooien is dan ook nooit zo.
“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.”
bij de eerste statement is er een OR en bij de tweede een AND, dat geeft ander resultaat.
!= vs ==steffex schreef op dinsdag 25 juni 2013 @ 15:47:
[...]
bij de eerste statement is er een OR en bij de tweede een AND, dat geeft ander resultaat.
Let op: Mijn post bevat meningen, aannames of onwaarheden
Dat argument ging prima op in de tijd dat de prijzen van woningen explodeerden. Als je een huis kocht voor een ton, en dat over 2 jaar weer voor 150.000 kon verkopen, dan kan je daar echt onmogelijk tegenop sparen. (bedragen slaan nergens op).Woy schreef op dinsdag 25 juni 2013 @ 15:46:
[...]
Ik snap het argument van mensen dat huren geld weg gooien is dan ook nooit zo.
Vandaag de dag gaat dit argument inderdaad niet meer op.
Let op: Mijn post bevat meningen, aannames of onwaarheden
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.
Tja, maar dat is hetzelfde als een ton lenen en daar aandelen/opties voor kopen. Gewoon speculeren met geleend geld!GateKeaper schreef op dinsdag 25 juni 2013 @ 15:48:
[...]
Dat argument ging prima op in de tijd dat de prijzen van woningen explodeerden. Als je een huis kocht voor een ton, en dat over 2 jaar weer voor 150.000 kon verkopen, dan kan je daar echt onmogelijk tegenop sparen. (bedragen slaan nergens op).
Vandaag de dag gaat dit argument inderdaad niet meer op.
“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.”
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
ArgumentNullExceptionDaos schreef op dinsdag 25 juni 2013 @ 15:37:
Ik zou het samenvoegen:
C#:
1 2 3 4 5 6 7 8 9 void PrintName(Person p) { if (p == null || p.Name == null) { return; } Console.WriteLine(p.Name); }
of:
C#:
1 2 3 4 5 6 7 void PrintName(Person p) { if (p != null && p.Name != null) { Console.WriteLine(p.Name); } }
Ik ben er nog niet uit welke van de twee ik zou kiezen.
Mother north, how can they sleep while their beds are burning?
Zijn allebei net zo slechte oplossingenGamebuster schreef op dinsdag 25 juni 2013 @ 15:43:
[...]
gadverdamme kerel. doe het dan meteen goed
Java:
1 p == null || System.out.println(p.getName())
Maar ik ben een fan van de ?: operator. Alleen in deze methode zou ik hem niet zo snel gebruiken omdat je niks returned.
Alleen ik zou de check of Person null is ook niet zo snel in die print methode zetten. Gooi maar lekker een NullPointerException als Person null is.
"Write code as if the next maintainer is a vicious psychopath who knows where you live."
dat laatste gebeurd vaak niet heb ik 't idee, daarom wordt er vaak gezegd dat huren geld weggooien is....Woy schreef op dinsdag 25 juni 2013 @ 15:46:
[...]
En die aflossing is ook geen voordeel van het kopen van een woning, want als je huurt kun je net zo goed elke maand eenzelfde bedrag opzij zetten, en dan heb je na 30 jaar ook een flink bedrag gespaard.
Ik snap het argument van mensen dat huren geld weg gooien is dan ook nooit zo.
Ik heb destijds gekozen nog zelfs vlak voordat het quasi verplicht werd om ongeveer 70% af te lossen. Ondertussen ben ik al lang van die vriendin af waarmee ik het kocht en hoop ik nog steeds dat hij ooit weer boven water komt te staan en ik hem gewoon zonder NHG kan verkopenGateKeaper schreef op dinsdag 25 juni 2013 @ 15:48:
[...]
Dat argument ging prima op in de tijd dat de prijzen van woningen explodeerden. Als je een huis kocht voor een ton, en dat over 2 jaar weer voor 150.000 kon verkopen, dan kan je daar echt onmogelijk tegenop sparen. (bedragen slaan nergens op).
Vandaag de dag gaat dit argument inderdaad niet meer op.
Er valt op dit moment echt niet tegen de crisis op af te lossen, zeker als je nog wat extra kosten bij je hypotheek hebt gefinancierd....
iOS developer
Behalve dan dat als je huurt én een ton leent dat je dan je huur én de rente betaalt. Het mooie van een huis is dat je de twee kunt combineren, en dat ook nog eens extra voordelig in de zin een huis als onderpand (dus veel lagere rente) en ook nog eens HRAWoy schreef op dinsdag 25 juni 2013 @ 15:50:
[...]
Tja, maar dat is hetzelfde als een ton lenen en daar aandelen/opties voor kopen. Gewoon speculeren met geleend geld!
[ Voor 10% gewijzigd door .oisyn op 25-06-2013 15:53 ]
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.
Waarom? Als je naar de code kijkt is null gewoon valide input voor de functie. Dan slaat het gooien van die exceptie natuurlijk nergens op.
Tuurlijk, ware het niet dat speculeren met de waarde van een huis wat je gekocht hebt, iets betrouwbaarder/stabiler is dan als je aandelen/opties gebruiktWoy schreef op dinsdag 25 juni 2013 @ 15:50:
[...]
Tja, maar dat is hetzelfde als een ton lenen en daar aandelen/opties voor kopen. Gewoon speculeren met geleend geld!
Yup, wat mij betreft wel!Firesphere schreef op dinsdag 25 juni 2013 @ 15:50:
Is het legaal om klanten naar /dev/null te verwensen?
naja als je Name aanroept op null gaat het wel fout.PrisonerOfPain schreef op dinsdag 25 juni 2013 @ 15:53:
[...]
Waarom? Als je naar de code kijkt is null gewoon valide input voor de functie. Dan slaat het gooien van die exceptie natuurlijk nergens op.
"Write code as if the next maintainer is a vicious psychopath who knows where you live."
Volgens mij klopt het gewoon. De || en && zijn lazy. Als het linkerdeel al respectievelijk waar of niet waar is, dan wordt het rechterdeel niet uitgevoerd.
Je wilt properties van een null value printen?PrisonerOfPain schreef op dinsdag 25 juni 2013 @ 15:53:
[...]
Waarom? Als je naar de code kijkt is null gewoon valide input voor de functie. Dan slaat het gooien van die exceptie natuurlijk nergens op.
Mother north, how can they sleep while their beds are burning?
Ik ging er van uit dat hij zelf die exceptie wilde gooien.
Geen idee, maar wellicht wil je alleen properties printen van objecten die niet null zijn. Nevermind.Ozzie schreef op dinsdag 25 juni 2013 @ 15:54:
[...]
naja als je Name aanroept op null gaat het wel fout.
Ben ik het mee eens hoor, maar het is gewoon onzin om dat maar te zeggen dat huren geld weggooien is, want dat is kopen net zo goed, zelfs als je het contant af kan rekenen, want dan had je eventueel rendement kunnen hebben van het geld als je geen huis gekocht had.oisyn schreef op dinsdag 25 juni 2013 @ 15:52:
[...]
Kopen was gewoon altijd een goede investering. Nog steeds imho, alleen moet je het niet op zo'n korte termijn bekijken.
“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.”
De code klopt in die zin dat er geen exception wordt gegooid. Maar wil je echt niks doen als je er null in stopt? Lijkt me eerder een gevalletje ArgumentNullException.Daos schreef op dinsdag 25 juni 2013 @ 15:55:
[...]
Volgens mij klopt het gewoon. De || en && zijn lazy. Als het linkerdeel al respectievelijk waar of niet waar is, dan wordt het rechterdeel niet uitgevoerd.
Mother north, how can they sleep while their beds are burning?
Alleen het gedram over var en op sommige plekken LINQ daar kan ik me nog wel eens aan storen.
iOS developer

Ben net de code van een ingehuurde developer aan het bekijken en zie dat hij bij een van zijn update statements de where clause compleet vergeten is.

Hadden we mooi een hele tabel overschreven als we dit niet van tevoren gezien hadden.

Dat kan je ook uitzetten eventueel.BikkelZ schreef op dinsdag 25 juni 2013 @ 16:02:
Alleen het gedram over var en op sommige plekken LINQ daar kan ik me nog wel eens aan storen.
[ Voor 30% gewijzigd door PdeBie op 25-06-2013 16:03 ]
Een exception gooi je als je als je een onverwachte situatie tegenkomt. In veel gevallen in een null argument een verwachte situatie en is het dus ongewenst een exception te gooien.Down schreef op dinsdag 25 juni 2013 @ 15:59:
[...]
De code klopt in die zin dat er geen exception wordt gegooid. Maar wil je echt niks doen als je er null in stopt? Lijkt me eerder een gevalletje ArgumentNullException.
Of je een exception gooit of gewoon 'niks doet' is afhankelijk van de methode.
https://niels.nu
En dat was dus het punt wat ik probeerde te maken, alleen kwam ik niet uit m'n woorden.Hydra schreef op dinsdag 25 juni 2013 @ 16:04:
[...]
Een exception gooi je als je als je een onverwachte situatie tegenkomt. In veel gevallen in een null argument een verwachte situatie en is het dus ongewenst een exception te gooien.
Of je een exception gooit of gewoon 'niks doet' is afhankelijk van de methode.
Doe dan meteen:Gamebuster schreef op dinsdag 25 juni 2013 @ 15:43:
gadverdamme kerel. doe het dan meteen goed
Java:
1 p == null || System.out.println(p.getName())
1
| p && std::cout << p.Name << std::endl; |
Of eigenlijk (naar de originele code):
1
| p && p.Name && std::cout << p.Name << std::endl; |
Ik vind het vergelijken van pointers met null/NULL altijd zo overbodig
Ik zou het zelf meestal zo doen; sanity-checks met early-out en dan de echte body zonder extra indenting.
1
2
3
4
5
6
7
8
9
| void PrintName(Person p) { if( !p ) return; if( !p.Name ) return; std::cout << p.Name << std::endl; } |
Als we zo gaan beginnen kan PrintName() sowieso beter een method op Person zijn lijkt meDown schreef op dinsdag 25 juni 2013 @ 15:59:
De code klopt in die zin dat er geen exception wordt gegooid. Maar wil je echt niks doen als je er null in stopt? Lijkt me eerder een gevalletje ArgumentNullException.
pdebie schreef op dinsdag 25 juni 2013 @ 16:02:
I love code reviews!![]()
Ben net de code van een ingehuurde developer aan het bekijken en zie dat hij bij een van zijn update statements de where clause compleet vergeten is.![]()
Hadden we mooi een hele tabel overschreven als we dit niet van tevoren gezien hadden.
[...]
Dat kan je ook uitzetten eventueel.
De betere wraakacties?
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Wauw, dat zijn geen leuke grappen inderdaadpdebie schreef op dinsdag 25 juni 2013 @ 16:02:
I love code reviews!![]()
Ben net de code van een ingehuurde developer aan het bekijken en zie dat hij bij een van zijn update statements de where clause compleet vergeten is.![]()
Hadden we mooi een hele tabel overschreven als we dit niet van tevoren gezien hadden.
[...]
Dat kan je ook uitzetten eventueel.

Gevalletje te snel copy-pasten denk ik als ik naar de rest van de code kijk.
Hoop code vrijwel hetzelfde op wat parameter naampjes etc. na.
Dit was met het testen wel boven water gekomen uiteraard, maar ben blij dat ik het eerder zag
[ Voor 10% gewijzigd door PdeBie op 25-06-2013 16:17 ]
Copy/pasten, daar heb je het alpdebie schreef op dinsdag 25 juni 2013 @ 16:16:
Wraak actie? Dat denk ik niet. Hij is maar al te blij dat hij bij ons mag werken.
Gevalletje te snel copy-pasten denk ik als ik naar de rest van de code kijk.
Hoop code vrijwel hetzelfde op wat parameter naampjes etc. na.
Dit was met het testen wel boven water gekomen uiteraard, maar ben blij dat ik het eerder zag
Tell me about it... Heb het "verlies" van afgelopen jaar ook eens uitgerekend, wordt je niet happy van. Laten we inderdaad maar hopen dat het ooit weer een beetje goed komt. Het hoeft niet te exploderen, maar de pijn verzachten mag best wel. De huidige generatie hoeft toch niet lijden voor de fouten gemaakt door de voorgaande generatie?BikkelZ schreef op dinsdag 25 juni 2013 @ 15:52:
[...]
Er valt op dit moment echt niet tegen de crisis op af te lossen, zeker als je nog wat extra kosten bij je hypotheek hebt gefinancierd....
En tjah... de rente zal vast weer stijgen, maar toch doet het toch wel een beetje pijn als je je beseft dat je enkele honderden euro's per maand bespaard als je vandaag je hypotheek had kunnen oversluiten.
Ik copy/paste ook wel eens wat natuurlijk, maar ik test dingen wel eerst zelf lokaal voordat ik het oplever voor test. Zeker een bug als dit moet toch vrij snel duidelijk worden lijkt mij.RobertMe schreef op dinsdag 25 juni 2013 @ 16:21:
[...]
Copy/pasten, daar heb je het al. Meestal veroorzaakt het meer problemen dan wat anders. En in dit geval is het "correct oplossen" (of datgene wat nodig is over tikken of een beetje refactoren) misschien ook nog sneller dan het copy/pasten, fout aanpassen, en later moeten uitzoeken waarom iets mis gaat.
Yep, maar om even aan te geven dat de standaard settings behoorlijk goed zijn
iOS developer
Een object is in de meeste talen nou eenmaal niet non-nullable zoals primitieven dat zijn. Er zijn genoeg situaties denkbaar waarbij een null reference totaal ongewenst is maar een taal er simpelweg niet op berekend is.Hydra schreef op dinsdag 25 juni 2013 @ 16:04:
[...]
Een exception gooi je als je als je een onverwachte situatie tegenkomt. In veel gevallen in een null argument een verwachte situatie en is het dus ongewenst een exception te gooien.
Of je een exception gooit of gewoon 'niks doet' is afhankelijk van de methode.
* BikkelZ berijdt een van zijn stokpaardjes
iOS developer
Je kunt twisten over wat wel of niet een verwachte situatie is. In veel gevallen is een null argument ook niet een verwachte situatieHydra schreef op dinsdag 25 juni 2013 @ 16:04:
[...]
Een exception gooi je als je als je een onverwachte situatie tegenkomt. In veel gevallen in een null argument een verwachte situatie en is het dus ongewenst een exception te gooien.
Of je een exception gooit of gewoon 'niks doet' is afhankelijk van de methode.
Nu is dit voorbeeld redelijk triviaal, maar ik ben er helaas vaak zat tegen aangelopen dat functies 'niks' doen vanwege een null check waar een exception op zijn plaats was geweest. Het lijkt haast wel alsof veel mensen 'exceptions are bad!' denken (niet jullie hoor
Mother north, how can they sleep while their beds are burning?
Zeker. Al vind ik sommige key short-cuts niet even handig. Maar ook deze zijn gelukkig aan te passen.BikkelZ schreef op dinsdag 25 juni 2013 @ 16:42:
[...]
Yep, maar om even aan te geven dat de standaard settings behoorlijk goed zijn
En het vervolg:Hydra schreef op donderdag 20 juni 2013 @ 13:38:
Pff. Klant vraagt een aangepaste offerte. Met o.a. 2 voedingen. Ik vraag voor welk apparaat die voedingen precies zijn. Hij reageert met een generieke naam (dus niet het specifieke type). Als ik hem dan vraag om het specifieke type of het serienummer krijg ik een pissige mail terug dat 't 'em te lang duurt.
Ja hallo, wees dan meteen duidelijk!
Dezelfde klant stuurt een order. Die moet dus door naar de leverancier. Ik mail terug met "bedankt bla bla bla, moet deze naar adres XYZ?" (z'n adres dat geregistreerd staat). Reageert 'ie met "nee, moet naar het bekende adres voor klant ABC" (waar hij onderaannemer voor is).
Dus in plaats van gewoon ff te melden wat het adres is mag ik nu in de orderadministratie uit gaan zoeken waar de fuck die zooi naar toe gaat. En dat voor een nettowinst van een whopping 50 euro. Aaargh!
Ter vergelijking; andere klant doet vandaag ook een order voor ons, 400 euro nettowinst waar gewoon netjes een orderPDF bij zit met ALLE info die ik nodig heb. Is voor mij dan gewoon 5 minuten werk.
Fuck it, ik ga naar huis...
https://niels.nu
Een vergelijking met null/NULL lijkt misschien overbodig, voor jouw, maar kan code ook juist leesbaarder maken. Vooral met de toevoeging van nullptr in C++11.deadinspace schreef op dinsdag 25 juni 2013 @ 16:11:
[...]
Doe dan meteen:
C++:
1 p && std::cout << p.Name << std::endl;
Of eigenlijk (naar de originele code):
C++:
1 p && p.Name && std::cout << p.Name << std::endl;
Ik vind het vergelijken van pointers met null/NULL altijd zo overbodig
Ik zou het zelf meestal zo doen; sanity-checks met early-out en dan de echte body zonder extra indenting.
C++:
1 2 3 4 5 6 7 8 9 void PrintName(Person p) { if( !p ) return; if( !p.Name ) return; std::cout << p.Name << std::endl; }
[...]
Als we zo gaan beginnen kan PrintName() sowieso beter een method op Person zijn lijkt me
1
2
| while (item->next) // vs. while (item->next != nullptr) |
Haha, ja zo makkelijk hè, sommige mensenHydra schreef op dinsdag 25 juni 2013 @ 17:10:
[...]
En het vervolg:
Dezelfde klant stuurt een order. Die moet dus door naar de leverancier. Ik mail terug met "bedankt bla bla bla, moet deze naar adres XYZ?" (z'n adres dat geregistreerd staat). Reageert 'ie met "nee, moet naar het bekende adres voor klant ABC" (waar hij onderaannemer voor is).
Dus in plaats van gewoon ff te melden wat het adres is mag ik nu in de orderadministratie uit gaan zoeken waar de fuck die zooi naar toe gaat. En dat voor een nettowinst van een whopping 50 euro. Aaargh!
Ter vergelijking; andere klant doet vandaag ook een order voor ons, 400 euro nettowinst waar gewoon netjes een orderPDF bij zit met ALLE info die ik nodig heb. Is voor mij dan gewoon 5 minuten werk.
Fuck it, ik ga naar huis...
Ik zit hier nog steeds met een response zonder input
1
2
3
4
5
6
7
8
9
10
| // Handle reporturl if (isset($_REQUEST['trxid']) && isset($_REQUEST['status']) && isset($_REQUEST['rtlo'])) { // Sanitize input $trxid = sanitize_text_field($_REQUEST['trxid']); $status = sanitize_text_field($_REQUEST['status']); $rtlo = sanitize_text_field($_REQUEST['rtlo']); // doe iets... } |
Als ik de input zelf in de GET gooi dan krijg ik netjes resultaat, via de server van de 3e partij ... niks

Moet er zo ook vandoor, schiet niet op vandaag

Sinds de uitvinding van C worden pointers al op een dergelijke manier gechecked, nullptr maakt die situatie niet heel veel beter.ThomasG schreef op dinsdag 25 juni 2013 @ 17:26:
Bij de tweede kun je duidelijker zien dat je een controle doet op een null-pointer. Vooral omdat je een afgedankte of ongebruikte pointer ook naar nullptr naar verwijzen.
Ik weet tPrisonerOfPain schreef op dinsdag 25 juni 2013 @ 13:42:
Ik ben me de laatste paar dagen in WinDBG gaan verdiepen, en het is een belachelijk krachtige debugger. Iets minder modern dan visual studio maar een hoop robuster, en er is zo veel meer mogelijk. Je kunt in dezelfde debugger, .Net, Native en de Kernel (driver crashes) debuggen, je hebt met een commando een lijst van alle locks die je application maakt en het beste van alles: de window manager lijkt heel veel op die van ProDBG.
Er zitten features in die voor jou je crash-dump analyseren en de handleiding is enorm gedetailleerd![]()
Voor de .netters:
[video]
En native:
[video]
Ik heb er o.a. eens de obfuscated/encrypted themes van reuxables mee uitgesnoept.
privé projectje niks commercieels
En gebruik het altijd als er weer eens bsods op een pc zijn zonder eenduidige oorzaak.
Dat ligt er maar net aan. Voor het checken in veel gevallen misschien niet, maar er zitten veel voordelen aan het gebruik van nullptr. Het wordt in tegenstelling tot NULL of 0 niet aangezien als een integer, maar heeft zijn eigen type std::nullptr_t. Dit neemt een aantal problemen weg met overloading, en dat je NULL of 0 niet kunt forwarden, maar nullptr wel. Daarnaast kun je een template of functie specialiseren op nullptr, zodat je null-pointers een andere behandeling kunt geven.PrisonerOfPain schreef op dinsdag 25 juni 2013 @ 17:37:
[...]
Sinds de uitvinding van C worden pointers al op een dergelijke manier gechecked, nullptr maakt die situatie niet heel veel beter.
The new C++09 nullptr keyword designates an rvalue constant that serves as a universal null pointer literal, replacing the buggy and weakly-typed literal 0 and the infamous NULL macro. nullptr thus puts an end to more than 30 years of embarrassment, ambiguity, and bugs.
Ik ben er net even een uurtje mee aan het stoeien geweest en heb nu al netjes een PDF met daarin een overzicht van alle accounts die in een database staan. En dat alles met een minimale hoeveelheid code en werk.
Het lijkt mij juist een ideale library, nu alleen nog even de lead developer overtuigen
"Write code as if the next maintainer is a vicious psychopath who knows where you live."
OT:TheNephilim schreef op dinsdag 25 juni 2013 @ 17:30:
[...]
Haha, ja zo makkelijk hè, sommige mensen
Ik zit hier nog steeds met een response zonder inputInmiddels met support aan de gang, maar dat schiet niet echt op zo.
PHP:
1 2 3 4 5 6 7 8 9 10 // Handle reporturl if (isset($_REQUEST['trxid']) && isset($_REQUEST['status']) && isset($_REQUEST['rtlo'])) { // Sanitize input $trxid = sanitize_text_field($_REQUEST['trxid']); $status = sanitize_text_field($_REQUEST['status']); $rtlo = sanitize_text_field($_REQUEST['rtlo']); // doe iets... }
Als ik de input zelf in de GET gooi dan krijg ik netjes resultaat, via de server van de 3e partij ... niks
Moet er zo ook vandoor, schiet niet op vandaag
In 1 isset() kun je direct al je inputs checken.
Ik moet wel eens handmatig met wat queries updaten op productie databases, ook een keer een foutje mee gemaakt..TheNephilim schreef op dinsdag 25 juni 2013 @ 16:12:
[...]
Wauw, dat zijn geen leuke grappen inderdaadVroegah nog wel eens meegemaakt in productie, dat was bepaald geen pretje
Je leert er zeker van zullen we maar zeggen.

1
2
3
4
5
| BEGIN TRAN XXX update meuk END TRAN XXX |
omheen
Waarom gebruik je dan ook $_ REQUEST? Wat is de request_ order?TheNephilim schreef op dinsdag 25 juni 2013 @ 17:30:
[...]
Haha, ja zo makkelijk hè, sommige mensen
Ik zit hier nog steeds met een response zonder inputInmiddels met support aan de gang, maar dat schiet niet echt op zo.
PHP:
1 2 3 4 5 6 7 8 9 10 // Handle reporturl if (isset($_REQUEST['trxid']) && isset($_REQUEST['status']) && isset($_REQUEST['rtlo'])) { // Sanitize input $trxid = sanitize_text_field($_REQUEST['trxid']); $status = sanitize_text_field($_REQUEST['status']); $rtlo = sanitize_text_field($_REQUEST['rtlo']); // doe iets... }
Als ik de input zelf in de GET gooi dan krijg ik netjes resultaat, via de server van de 3e partij ... niks
Moet er zo ook vandoor, schiet niet op vandaag
https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...
Let op: Mijn post bevat meningen, aannames of onwaarheden
Aangezien het een combinatie van $_GET, $_POST, en $_COOKIE is, is het redelijk evil ja.Gamebuster schreef op dinsdag 25 juni 2013 @ 19:14:
$_REQUEST was toch evil enzo?
Ik begrijp überhaupt niet dat ze het er ooit in gestopt hebben terwijl er al zoveel beveiligingsdebacles zijn geweest met het feit dat je vroeger iedere variabele die in de applicatie gebruikt werd kon zetten via een GET-parameter. Volgens mij samen met SQL-injection wel de meest populaire manier om sites te hacken destijds.Gamebuster schreef op dinsdag 25 juni 2013 @ 19:14:
$_REQUEST was toch evil enzo?
Maar goed er zijn prima alternatieven voor PHP tegenwoordig, je hóeft het niet meer te gebruiken.
--------
Hmmm ik zie echt heel weinig verschil tussen de oude en de nieuwe PHP site in de documentatie. Nog steeds lelijke blauwe blokken en ongemodereerd commentaar.
[ Voor 13% gewijzigd door BikkelZ op 25-06-2013 19:28 ]
iOS developer
Ik vind de eerste juist leesbaarder; voor mij leest dat impliciet als "while item->next is valid" en dat leest voor mij prettiger dan met expliciete NULL/nullptr-check. Ik gebruik hetzelfde ook altijd voor booleans (waar ik if( active == true ) ook minder leesbaar vind); booleans en pointers hebben voor mij dan ook dezelfde tweedeling tussen "wel geldig/actief" en "niet geldig/actief" (waar die tweede categorie bij booleans uit 1 state bestaat en bij pointers uit veel potentiele states). De volgende twee voorbeelden lijken daarom syntactisch niet alleen veel op elkaar, maar ook de semantiek is vrijwel gelijk:ThomasG schreef op dinsdag 25 juni 2013 @ 17:26:
Een vergelijking met null/NULL lijkt misschien overbodig, voor jouw, maar kan code ook juist leesbaarder maken. Vooral met de toevoeging van nullptr in C++11.
C++:Bij de tweede kun je duidelijker zien dat je een controle doet op een null-pointer. Vooral omdat je een afgedankte of ongebruikte pointer ook naar nullptr naar verwijzen.
1 2 while (item->next) // vs. while (item->next != nullptr)
1
2
3
4
5
6
7
| // bool p.nameIsValid; char *p.name; if( p.nameIsValid ) cout << p.name; if( p.name ) cout << p.name; |
Je hebt gelijk dat het tweede voorbeeld niet expliciet maakt dat het om een pointer gaat, maar meestal blijkt uit de context (zoals de variabele/propertynaam) wel of het een boolean of pointer betreft.
Als je daar echt bezwaar tegen hebt, hoe doe je het dan in het volgende geval?
1
| blaat += 4; |
Is blaat een pointer of een integer? Beiden zijn mogelijk en (afhankelijk van de context) prima verdedigbaar.
Merk op dat ik de if( blaat ) constructie nooit gebruik voor integers (aangezien die in mijn ogen niet aan dezelfde semantische tweedeling voldoen), dus daar kan in mijn code geen verwarring over bestaan.
Ja, klopt. Ik had de taal van het voorbeeld veranderd van C# naar C++ omdat ik redelijk bekend ben met de semantiek van C++ maar nauwelijks met die van C#, maar dat had ik over het hoofd gezienDaarnaast kun je in jouw PrintName beter met een reference werken, in plaats van een kopie. Maar daar ging je voorbeeld natuurlijk niet om

2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Dat soort regels vind ik juist weer onduidelijk. Wat if naam? Niet leeg, gedefinieerd, geldig, etc...?
Net ook weer een bestelling geplaatst via een of andere website. Krijg ik als bevestiging weer mijn wachtwoord opgestuurd.

Daar ben ik me bewust van, maar daar ging het niet overThomasG schreef op dinsdag 25 juni 2013 @ 18:05:
[...]
Dat ligt er maar net aan. Voor het checken in veel gevallen misschien niet, maar er zitten veel voordelen aan het gebruik van nullptr.
In C kun je er vrijwel zeker van zijn name een pointer is naar een string en in C++, als je de string class zo kunt gebruiken, kun je er van uit gaan dat 'ie een size == 0 check doet of dat 't een char * is.Feanathiel schreef op dinsdag 25 juni 2013 @ 20:13:
Dat soort regels vind ik juist weer onduidelijk. Wat if naam? Niet leeg, gedefinieerd, geldig, etc...?
[ Voor 39% gewijzigd door PrisonerOfPain op 25-06-2013 21:15 ]
Is dit niet een kwestie van klanten opvoeden? administratiekosten gaan rekenen voor dit soort geintjes?Hydra schreef op dinsdag 25 juni 2013 @ 17:10:
[...]
En het vervolg:
Dezelfde klant stuurt een order. Die moet dus door naar de leverancier. Ik mail terug met "bedankt bla bla bla, moet deze naar adres XYZ?" (z'n adres dat geregistreerd staat). Reageert 'ie met "nee, moet naar het bekende adres voor klant ABC" (waar hij onderaannemer voor is).
Dus in plaats van gewoon ff te melden wat het adres is mag ik nu in de orderadministratie uit gaan zoeken waar de fuck die zooi naar toe gaat. En dat voor een nettowinst van een whopping 50 euro. Aaargh!
Ter vergelijking; andere klant doet vandaag ook een order voor ons, 400 euro nettowinst waar gewoon netjes een orderPDF bij zit met ALLE info die ik nodig heb. Is voor mij dan gewoon 5 minuten werk.
Fuck it, ik ga naar huis...
Klant in kwestie weet dat 'ie dit soort shit kan maken. Da's het nadeel van onze business; dit soort types zijn enorm arrogant omdat ze als 'consultant' verantwoordelijk zijn voor de aankoop van de bedrijven waar we aan leveren.steffex schreef op dinsdag 25 juni 2013 @ 21:21:
Is dit niet een kwestie van klanten opvoeden? administratiekosten gaan rekenen voor dit soort geintjes?
https://niels.nu
Hierdoor "dwing" je klanten op een manier te bestellen die voor jullie als bedrijf fijn is en voor hen het snelst resultaat geeft.
Dit is natuurlijk alleen mogelijk als je werkgever meewerkt en bereid is om een paar "pissige" klanten te woord te staan.
in Groovy word het helemaal een feest:Feanathiel schreef op dinsdag 25 juni 2013 @ 20:13:
[...]
Dat soort regels vind ik juist weer onduidelijk. Wat if naam? Niet leeg, gedefinieerd, geldig, etc...?
1
2
3
| void printName(person) { println person?.name } |
Edit:
De zogenaamde Safe Navigation Operator
[ Voor 17% gewijzigd door Ozzie op 25-06-2013 22:00 ]
"Write code as if the next maintainer is a vicious psychopath who knows where you live."
Maar je print nog steeds de null value in dit geval. Dus ik denk dat het je qua kortheid het hooguit zo zou kunnen doen:Ozzie schreef op dinsdag 25 juni 2013 @ 21:58:
[...]
in Groovy word het helemaal een feest:
Java:
1 2 3 void printName(person) { println person?.name }
Edit:
De zogenaamde Safe Navigation Operator
1
2
3
4
| void printName(person) { if person?.name != null println person.name } |
iOS developer
Dit topic is gesloten.
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep voor iedereen in de Devschuur® en niet als vraagbaak.