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.
Best domme fout imo.. ipv het resetten van bit x werden dus bits 0 t/m (x-1) gereset
Beetje raar dat dit nooit is opgevallen in al die jaren
/me heeft eindelijk ook een icoontje.. woef.. boeien..
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.
uhh...ook niet? er wordt ge-AND met negatieve maskWVL_KsZeN schreef op dinsdag 21 juni 2011 @ 16:44:
koekje voor Akathos
ipv het resetten van bit x werden dus bits 0 t/m (x-1) gereset
/me heeft eindelijk ook een icoontje.. woef.. boeien..
Dan had er -(x+1) moeten staan (in two's complement). Immers ~8 = -9, en dan werkt het ook alleen nog voor powers of two maar als die variabele ibit heet zal dat ook wel het geval zijn geweest nemen we dan maar aan.EddoH schreef op dinsdag 21 juni 2011 @ 16:48:
[...]
uhh...ook niet? er wordt ge-AND met negatieve mask
[ Voor 31% gewijzigd door PrisonerOfPain op 21-06-2011 16:51 ]
1
2
3
4
5
6
7
| function checkData($data){ //doe wat if($result) return true; else return false; } |
terwijl:
1
2
3
4
5
6
| function checkData($data){ //doe wat if($result) return true; return false; } |
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
Of gewoon "return $result ? true : false" of "return !!$result" of "return $result" (niet in PHP).ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
Niet echt fout, en ook niet een slecht voorbeeld, maar je ziet veel:
Wat dacht je van 'return $result;'ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
.....
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
1
2
3
4
| function checkData($data){ //doe wat return $result; } |
?
precies. Als je bit 14 wilt resetten (waarde 0x4000), dan is -bit14 gelijk aan 0xc000. Door de AND blijven dan alleen bits 14 en 15 staan, de rest (bits 0-13) wordt gereset. -(bit14+1) is gelijk aan 0xbfff en dan gaat het natuurlijk wel goed.PrisonerOfPain schreef op dinsdag 21 juni 2011 @ 16:49:
[...]
Dan had er -(x+1) moeten staan (in two's complement). Immers ~8 = -9, en dan werkt het ook alleen nog voor powers of two maar als die variabele ibit heet zal dat ook wel het geval zijn geweest nemen we dan maar aan.
[ Voor 6% gewijzigd door WVL_KsZeN op 21-06-2011 16:54 ]
/me heeft eindelijk ook een icoontje.. woef.. boeien..
Doe het dan meteen zo:ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
Niet echt fout, en ook niet een slecht voorbeeld, maar je ziet veel:
PHP:
1 2 3 4 5 6 7 function checkData($data){ //doe wat if($result) return true; else return false; }
terwijl:
PHP:
1 2 3 4 5 6 function checkData($data){ //doe wat if($result) return true; return false; }
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
1
2
3
4
| function checkData($data){ //doe wat return ($result == true); } |
Alhoewel het niet veel uitmaakt vind ik de eerste optie helderder eigenlijk.
edit:
lol die !!$result is wel creatief
@Gleighton en PrisonerOfPain:
dat is niet hetzelfde als $result geen boolean is
[ Voor 7% gewijzigd door martijnve op 21-06-2011 16:59 ]
Mini-ITX GamePC: Core i5 3470 | 16GB DDR3 | GTX 970 4GB | Samsung 830 128GB | Dell u2711 (27", IPS,1440p), 2343BW
Persoonlijk vind ik de eerste echt niet slechter dan de tweede. In de eerste is veel duidelijker te zien welke delen conditioneel zijn.ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
Niet echt fout, en ook niet een slecht voorbeeld, maar je ziet veel:
PHP:
1 2 3 4 5 6 7 function checkData($data){ //doe wat if($result) return true; else return false; }
terwijl:
PHP:
1 2 3 4 5 6 function checkData($data){ //doe wat if($result) return true; return false; }
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
Maar eigenlijk zijn beiden ruk. Veel beter zou zijn:
1
2
3
4
| function checkData($data){ //doe wat return $result } |
(geen idee wat het type van result is, en als dat geen bool is, dan eventueel een cast toevoegen)
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
1
2
3
4
| function checkData($data){ //doe wat return ($result === true); } |
Speel ook Balls Connect en Repeat
Als $result geen boolean is is dat niet hetzelfdeOnbekend schreef op dinsdag 21 juni 2011 @ 16:55:
In php natuurlijk zo:![]()
PHP:
1 2 3 4 function checkData($data){ //doe wat return ($result === true); }
Mini-ITX GamePC: Core i5 3470 | 16GB DDR3 | GTX 970 4GB | Samsung 830 128GB | Dell u2711 (27", IPS,1440p), 2343BW
Och, het je kunt $result blijkbaar als hoedanig gebruiken dus zo boeiend is dat niet.martijnve schreef op dinsdag 21 juni 2011 @ 16:53:
@Gleighton en PrisonerOfPain:
dat is niet hetzelfde als $result geen boolean is
Dat bedoelde ik ook?PrisonerOfPain schreef op dinsdag 21 juni 2011 @ 16:49:
[...]
Dan had er -(x+1) moeten staan (in two's complement). Immers ~8 = -9, en dan werkt het ook alleen nog voor powers of two maar als die variabele ibit heet zal dat ook wel het geval zijn geweest nemen we dan maar aan.
Oftewel, zoals .oisyin al aangaf (1 << ibit) van maken dus
Liever gebruik je een cast:Onbekend schreef op dinsdag 21 juni 2011 @ 16:55:
In php natuurlijk zo:![]()
PHP:
1 2 3 4 function checkData($data){ //doe wat return ($result === true); }
1
2
3
4
| function checkData ($data) { // doe wat return (bool) $result; } |
Is in PHP vaak sneller en minder tikwerk, en in mijn opinie duidelijker. Al is het vaak uberhaupt niet nodig om te casten aangezien je doorgaans ook op de plek waar je het result nodig hebt die check kan uitvoeren; met uitzondering van gevallen waarin false niet gelijk is aan een false-evaluerend result en je die check niet kan uitvoeren waar je'm nodig hebt, maar dat gebeurt in mijn ervaring niet zo vaak
In dit geval juist wel; stel dat $result 0 of 1 is. Dan zal Onbekend's variant altijd false teruggeven terwijl PHP het zelf in expressies zal evalueren als true bij $result = 1, of je moet later alsnog die type-safe expressiecheck gebruiken.PrisonerOfPain schreef op dinsdag 21 juni 2011 @ 16:59:
Och, het je kunt $result blijkbaar als hoedanig gebruiken dus zo boeiend is dat niet.
[ Voor 22% gewijzigd door FragFrog op 21-06-2011 17:08 ]
Huh, maar ibit is geen bitpositie als je naar de andere twee macros kijkt.EddoH schreef op dinsdag 21 juni 2011 @ 17:02:
[...]
Dat bedoelde ik ook?
Oftewel, zoals .oisyin al aangaf (1 << ibit) van maken dus
Namen zijn overratedEddoH schreef op dinsdag 21 juni 2011 @ 17:06:
Nee maar dat doet de naamgeving wel vermoeden, en dat stinkt.
Edit: toelichting:
Bwerg
Terminal13
ID-College
Deze personen doen alle drie posts die op mij overkomen als trolls, Hieronder lees ik echter dat ik me waarschijnlijk vergis.
[ Voor 66% gewijzigd door yade op 21-06-2011 17:16 ]
Nee de code is gewoon bagger. We zijn er alleen nog niet uit hoe baggeryade schreef op dinsdag 21 juni 2011 @ 17:08:
Ligt het aan mij of wordt er nu gewoon getrolld?
Ligt aan jou.yade schreef op dinsdag 21 juni 2011 @ 17:08:
Ligt het aan mij of wordt er nu gewoon getrolld?
document.getElementById("radioButton").checked = true;
document.getElementById("radioButton").checked = false;
HTML:
<input type="radio" id="radioButton" value="Ja"/>
<input type="radio" id="radioButton" value="Nee"/>
Ik heb deze in mijn code moeten zetten...
Wist anders niet hoe ik mijn radio button kon unchecken via JS
Dus nu checked hij eerst altijd JA aan om daarna Ja uit te vinken.
Inderdaad, casten naar een bool in PHP is nogal hacky:martijnve schreef op dinsdag 21 juni 2011 @ 16:53:
lol die !!$result is wel creatief
1
2
| $str = "false"; var_dump(!!$str); //Niet niet str! |
[ Voor 65% gewijzigd door TJHeuvel op 21-06-2011 17:23 ]
redelijk slecht... 2x dezelfde id? dan wordt dus ook NEE eerst aan en dan uitgevinkt...Joostje123 schreef op dinsdag 21 juni 2011 @ 17:16:
JS:
document.getElementById("radioButton").checked = true;
document.getElementById("radioButton").checked = false;
HTML:
<input type="radio" id="radioButton" value="Ja"/>
<input type="radio" id="radioButton" value="Nee"/>
Ik heb deze in mijn code moeten zetten...
Wist anders niet hoe ik mijn radio button kon unchecken via JS
Dus nu checked hij eerst altijd JA aan om daarna Ja uit te vinken.
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
een ID moet binnen een html document uniek zijn, dus daar klopt al iets niet. de officiele standaard schrijft 'name' voor om input's te grouperen bij een radio/checkbox. ID's zijn extra en worden ook gebruikt voor labels.Joostje123 schreef op dinsdag 21 juni 2011 @ 17:16:
JS:
document.getElementById("radioButton").checked = true;
document.getElementById("radioButton").checked = false;
HTML:
<input type="radio" id="radioButton" value="Ja"/>
<input type="radio" id="radioButton" value="Nee"/>
Ik heb deze in mijn code moeten zetten...
Wist anders niet hoe ik mijn radio button kon unchecken via JS
Dus nu checked hij eerst altijd JA aan om daarna Ja uit te vinken.
Assumptions are the mother of all fuck ups | iRacing Profiel
Het was een voorbeeld, ik snap dat natuurlijk ook wel, maar als je iets moest testen en kijken of het true of false is..Janoz schreef op dinsdag 21 juni 2011 @ 16:54:
[...]
Persoonlijk vind ik de eerste echt niet slechter dan de tweede. In de eerste is veel duidelijker te zien welke delen conditioneel zijn.
Maar eigenlijk zijn beiden ruk. Veel beter zou zijn:
PHP:
1 2 3 4 function checkData($data){ //doe wat return $result }
(geen idee wat het type van result is, en als dat geen bool is, dan eventueel een cast toevoegen)
Als $result een bool is, dan return je die natuurlijk. Het ging mij erom dat een if/else hiervoor eigenlijk nodig is, want een return voert de onderliggende code toch niet meer uit..
Het is toen allemaal kopje onder gegaan en naar http://ep2.nl verhuisd op initiatief van Amygdela (? Jasper iig). Geen idee of dat nog leeft. Volgens mij is eDot lekker doorgegaan met hosten nadat ze ook jacq.com hadden gekilled. Het is al weer even geleden, maar had je dezelfde nickname daar? Ik kan me je niet herrinnerenZpAz schreef op dinsdag 21 juni 2011 @ 17:43:
[...]
Ja ben wel benieuwd hoe ver eDot is met het nieuwe e-programmeur....
Verwijderd
Dat was niet de fout. Je hebt gelijk dat het een betere manier is, maar de bug zat in wat ik aangaf..oisyn schreef op dinsdag 21 juni 2011 @ 16:43:
[...]
Je had het ook niet goed
.oisyn in "[alg] Slechtste programmeervoorbeelden d..."
Is jacq.com ook al dood?PrisonerOfPain schreef op dinsdag 21 juni 2011 @ 18:13:
[...]
Het is toen allemaal kopje onder gegaan en naar http://ep2.nl verhuisd op initiatief van Amygdela (? Jasper iig). Geen idee of dat nog leeft. Volgens mij is eDot lekker doorgegaan met hosten nadat ze ook jacq.com hadden gekilled. Het is al weer even geleden, maar had je dezelfde nickname daar? Ik kan me je niet herrinneren
* WernerL was Werie op eprog overigens.
Leuk om wat oude Eproggers terug te zien.
Roses are red, violets are blue, unexpected '{' on line 32.

Toen maar eens hier aangemeld en blijven hangen, hier is het toch leuker.
We are shaping the future
Dat weet jij net zo goed niet, want je hebt de aanroepen niet gezien, dus we konden alleen uitgaan van de naamgevingVerwijderd schreef op dinsdag 21 juni 2011 @ 19:05:
[...]
Dat was niet de fout.1 Je hebt gelijk dat het een betere manier is, maar de bug zat in wat ik aangaf.
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.
Verwijderd
Daar heb je gelijk in, maar de volgende code heeft (in ieder geval, bij mij) geen effect:.oisyn schreef op dinsdag 21 juni 2011 @ 21:54:
[...]
Dat weet jij net zo goed niet, want je hebt de aanroepen niet gezien, dus we konden alleen uitgaan van de naamgeving
1
2
3
4
5
6
7
8
9
10
11
| #include <stdio.h> #define reset_bit(byte, mask) byte &= -(mask) int main(void) { int byte = 0xFF; reset_bit(byte, 0x01); printf("0x%x", byte); return 0; } |
Daar komt bij mij netjes 0xff uit, terwijl je (als je niet doorhad dat er een min-teken stond in plaats van een ~) had verwacht dat er 0xfe uit zou komen
Daarnaast, als we alleen van de naamgeving uit gaan, dan slaat de benaming "reset_bit" nergens op gezien de functionaliteit (die er in dit geval niet is). Dus is het logisch om ervan uit te gaan dat de - een ~ moest zijn
[ Voor 19% gewijzigd door Verwijderd op 21-06-2011 23:59 ]
2x dezelfde ID mag niet, en het gedrag is dan ook niet gedefinieerd. Sommige browsers zullen ze allebei aan/uitzetten. Sommige browsers zullen alleen aan de eerste zitten. (Firefox doet dat laatste, als ik het me goed herinner.)F.West98 schreef op dinsdag 21 juni 2011 @ 17:27:
[...]
redelijk slecht... 2x dezelfde id? dan wordt dus ook NEE eerst aan en dan uitgevinkt...
Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info
Doet me denken aan een fout(je) die wij in een vorig project deden,Grijze Vos schreef op woensdag 22 juni 2011 @ 09:00:
[...]
2x dezelfde ID mag niet, en het gedrag is dan ook niet gedefinieerd. Sommige browsers zullen ze allebei aan/uitzetten. Sommige browsers zullen alleen aan de eerste zitten. (Firefox doet dat laatste, als ik het me goed herinner.)

<img id="1234" src="knop.png" />
en hier werd dmv JS een onClick handler aan toegevoegd. Werkte prima in IE7, werkte prima in Chrome, werkte prima in Firefox 4, maar hij verrekte het om te werken in Firefox 3.
Van alles proberen - de onClick aan een element erboven koppelen (een table cell),vloeken op DataTables, zoeken naar verschillen en bugs in onClick acties in Firefox 3... En toen ineens dacht ik 'Hm, mag een ID wel een nummer zijn?'
Antwoord, nee, een ID moet met een letter beginnen,
Het zou natuurlijk wel prettiger zijn als er in dit geval een foutmelding in de JS console kwam natuurlijk, maar vooruit. Ik moet ook nog eens nakijken of zoiets door de w3c validator komt.
Verwijderd
Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?Verwijderd schreef op woensdag 22 juni 2011 @ 09:28:
Het is de bedoeling dat browsers zo goed mogelijk een site proberen te renderen, ipv dat ze zich 100% aan de standaard moeten houden
Volgens mij begrijp je me verkeerd. Ik bedoelde helemaal niet dat de - ipv ~ geen bug was. Ik zei alleen dat het daarnaast raar is dat je een mask op moet geven ipv een bitVerwijderd schreef op dinsdag 21 juni 2011 @ 23:56:
Daar komt bij mij netjes 0xff uit, terwijl je (als je niet doorhad dat er een min-teken stond in plaats van een ~) had verwacht dat er 0xfe uit zou komen.
edit:
Daarnaast, als we alleen van de naamgeving uit gaan, dan slaat de benaming "reset_bit" nergens op gezien de functionaliteit (die er in dit geval niet is). Dus is het logisch om ervan uit te gaan dat de - een ~ moest zijn. Overigens wel een knappe typo, de ~ zit zo'n beetje aan de andere kant van het toetsenbord...
Het is dan ook niet zo dat de standaard zegt dat de browsers er vanaf mogen wijken. Daarnaast is de standaard, zeker voor HTML5, meer gebaseerd op wat browsers deden.Dragor schreef op woensdag 22 juni 2011 @ 10:29:
[...]
Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?
[ Voor 22% gewijzigd door .oisyn op 22-06-2011 10: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.
Een ID mag niet beginnen met een cijfer. Dus dan is het - net zoals Tsunamie zei - aan de browser om te bepalen wat er gebeurd zodra er toch een ID gedefinieerd wordt met een cijfer aan het begin.
Er is niemand die de implementaties certificeert, dus een standaard blijft een richtlijn. Niemand die er echt wat van kan zeggen mochten ze dingen anders implementeren.Dragor schreef op woensdag 22 juni 2011 @ 10:29:
[...]
Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?
¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Kwam laatst ook JPeetje, Cuve, HvdC en KlinZ in het wild tegen. Ik had idd het idee dat jacq.com dood was, maar ik moet eerlijk zeggen dat ik daar nooit kwam. (Onderandere omdat ik niet wist hoe je de rest van die naam speldeWernerL schreef op dinsdag 21 juni 2011 @ 19:20:
[...]
Is jacq.com ook al dood?
* WernerL was Werie op eprog overigens.
Leuk om wat oude Eproggers terug te zien.
Dat was toch het broertje van High-Voltage? Waar zijn die eigenlijk heen verhuist?ZpAz schreef op dinsdag 21 juni 2011 @ 18:40:
Zelfde Nickname idd, ep2 stelt ondertussen helaas ook niet meer veel voor, (ben Matthijn daar) zo goed als dood. Was daar idd ZpAz, zat daar met bubbel de slowchat onveilig te maken
Hahaha dat ging d'r af en toe nogal rap, ja. Beetje jammer, maar achteraf stelde die website allemaal niet zo gek veel voor. Wel een hechte groep mensen waar ik belachelijk veel tijd mee door heb gebracht.Alex) schreef op dinsdag 21 juni 2011 @ 20:21:
E-programmeur? Daar heb ik ook nog lang rondgehangen. Tot ik een keer een ban kreeg daar, daarover een mailwisseling had met een van de admins, en die me ineens van stalking beschuldigde.
Toen maar eens hier aangemeld en blijven hangen, hier is het toch leuker.
Jep, het broertje van die gozer met een antenne op z'n fietsDat was toch het broertje van High-Voltage? Waar zijn die eigenlijk heen verhuist?
Nee niet letterlijk; was benieuwd waar ze nu rondhingen op internetZpAz schreef op woensdag 22 juni 2011 @ 11:26:
[...]
Jep, het broertje van die gozer met een antenne op z'n fietsVerhuist als in letterlijk? Ze woonden in Belgie. HV zie je heel soms hier op Tweakers een berichtje plaatsen.
en nu weer ontopic
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
Verwijderd
QFT. Als elke browser deze standaarden volgden, dan zou in webdevelopment alles beter zijn (consistenter) en zou uiteindelijk de usability van gebruikers ook hoger zijn als zij gebruik maken van verschillende browsers/apparaten/etc.Dragor schreef op woensdag 22 juni 2011 @ 10:29:
[...]
Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?
behalve als in de standaard net die handige functionaliteit mist die jij wilt gebruiken (denk aan het uitvoeren van installaties via activeX via je browser)Verwijderd schreef op woensdag 22 juni 2011 @ 13:10:
[...]
QFT. Als elke browser deze standaarden volgden, dan zou in webdevelopment alles beter zijn (consistenter) en zou uiteindelijk de usability van gebruikers ook hoger zijn als zij gebruik maken van verschillende browsers/apparaten/etc.
Dan bouw je toch gewoon activeX in je browser?
This message was sent on 100% recyclable electrons.
1
2
3
4
| if ($where !== "" && $this->_table->delete($where)) return $this->_helper->redirector('index'); else return $this->_helper->redirector('index'); |
Verwijderd
Daar heb je natuurlijk helemaal gelijk in. En in het licht van dit topic is dat inderdaad meer de WTF dan het min-teken.oisyn schreef op woensdag 22 juni 2011 @ 10:34:
[...]
Volgens mij begrijp je me verkeerd. Ik bedoelde helemaal niet dat de - ipv ~ geen bug was. Ik zei alleen dat het daarnaast raar is dat je een mask op moet geven ipv een bit(anders had je het idd net zo goed reset_bits en set_bits kunnen noemen)
Verwijderd
Is het zeker bedoeld als zoiets?Slurpie schreef op woensdag 22 juni 2011 @ 15:36:
Damn kom nu net wat tegen in code wat ooit in India is gemaakt:
PHP:
1 2 3 4 if ($where !== "" && $this->_table->delete($where)) return $this->_helper->redirector('index'); else return $this->_helper->redirector('index');
1
2
3
4
| if ($where !== "") { $this->_table->delete($where); } return $this->_helper->redirector('index'); |
Verder is er niet veel opmerkelijks te zien aan dat stukje code?
Verwijderd
Ik kan me vergissen hoor, maar werkt dit ook niet gewoon:Verwijderd schreef op woensdag 22 juni 2011 @ 20:52:
[...]
Is het zeker bedoeld als zoiets?
PHP:
1 2 3 4 if ($where !== "") { $this->_table->delete($where); } return $this->_helper->redirector('index');
Verder is er niet veel opmerkelijks te zien aan dat stukje code?
1
2
3
4
| if ($where != "") { // het gaat hem hier om de !== en de != // blabla } //blabla |
[ Voor 11% gewijzigd door Verwijderd op 22-06-2011 21:08 ]
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.
Verwijderd
Het gebruik van != of !== is niet op te maken uit dat stukje code. Er is totaal geen context, je kan dus niet zeggen welk van de twee de juiste is. Zie:Verwijderd schreef op woensdag 22 juni 2011 @ 21:08:
[...]
Ik kan me vergissen hoor, maar werkt dit ook niet gewoon:
PHP:
1 2 3 4 if ($where != "") { // het gaat hem hier om de !== en de != // blabla } //blabla
1
2
3
| <?php var_dump(0 !== ""); // bool(true) var_dump(0 != ""); // bool(false) |
Kortom: Als de foutmelding is 'Input string was not in a correct format.'. Dan negeer hem gewoon maarJavaScript:
1 2 3 4 5 6 7 8 9 10 11 12 13 <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" ScriptMode="Release" /> <script type="text/javascript"> Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); function EndRequestHandler(sender, args) { if (args.get_error() != undefined && args.get_error().httpStatusCode == '500') { var errorMessage = args.get_error().message; args.set_errorHandled(true); } } </script>
And, in the code behind, use the ScriptManager_AsyncPostBackError method to trap and clear the error:
Visual Basic:
1 2 3 4 5 6 7 Protected Sub ScriptManager1_AsyncPostBackError(ByVal sender As Object, ByVal e As Microsoft.Web.UI.AsyncPostBackErrorEventArgs) Handles ScriptManager1.AsyncPostBackError If e.Exception.Message = "Input string was not in a correct format." Then Server.ClearError() Else ScriptManager1.AsyncPostBackErrorMessage = e.Exception.Message End If End Sub

[ Voor 3% gewijzigd door PdeBie op 23-06-2011 11:21 . Reden: code-tags toegevoegd ]
1
2
3
4
5
6
7
8
9
| public class UserManager { public UserManager() { //blabla } public UserManager getUsermanager() { return this; } } |
Goeiemorgen

¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸
Nee, het was de bedoeling dat een ander object UserManager kent, en vanuit het ene object UserManager aangesproken kan worden. In de code wordt éénmaal UserManager aangemaakt, waarna het ene object dit UserManager-object in zijn constructor meekrijgt als hij aangemaakt wordt. Bovenstaande methode slaat dus niet echt ergens op.
Heuj...jatbak...adyta schreef op donderdag 23 juni 2011 @ 11:24:
Ik betrap mezelf op de volgende fout:
Java:
1 2 3 public class UserManager { ... }
Goeiemorgen
Net bezig met:
1
2
3
4
| class FCUserManager { ... } |
1
| FCUserManagerFactoryBuilderDirector |
Toch?
We are shaping the future
Yo Dawg, I heard you liked patterns. So I put a pattern in your pattern so you can pattern while you patternAlex) schreef op donderdag 23 juni 2011 @ 14:27:
Je bent pas echt pro bezig met een
code:
1 FCUserManagerFactoryBuilderDirector
Toch?
En dat is dan weer een decorator pattern
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Verwijderd
Mijn post was zeker geen troll... gisteren kwam mijn collega opeens met een eureka moment... hij deed exact hetzelfde als mijn postyade schreef op dinsdag 21 juni 2011 @ 17:08:
Ligt het aan mij of wordt er nu gewoon getrolld?
Edit: toelichting:
Bwerg
Terminal13
ID-College
Deze personen doen alle drie posts die op mij overkomen als trolls, Hieronder lees ik echter dat ik me waarschijnlijk vergis.
Dus stuurde ik hem naar deze thread, liet hem lezen en dan zegt 'ie:
Nou snap ik het helemaal niet meer... Ach, zo is het toch ook goed
Helaas wel jaWernerL schreef op dinsdag 21 juni 2011 @ 19:20:
[...]
Is jacq.com ook al dood?
* WernerL was Werie op eprog overigens.
Leuk om wat oude Eproggers terug te zien.
Die vind ik nog wel grappigSlurpie schreef op woensdag 22 juni 2011 @ 15:36:
Damn kom nu net wat tegen in code wat ooit in India is gemaakt:
PHP:
1 2 3 4 if ($where !== "" && $this->_table->delete($where)) return $this->_helper->redirector('index'); else return $this->_helper->redirector('index');
[ Voor 51% gewijzigd door Patriot op 24-06-2011 11:43 ]
* YopY leest toevallig net Refactoring. Boek stond eigenlijk al jaren op m'n 'to read'-lijst. Zijn hier overigens ook modernere versies van, en/of een soort van retrospectives op dat boek?
Verwijderd
Zend framework!!Slurpie schreef op woensdag 22 juni 2011 @ 15:36:
Damn kom nu net wat tegen in code wat ooit in India is gemaakt:
PHP:
1 2 3 4 if ($where !== "" && $this->_table->delete($where)) return $this->_helper->redirector('index'); else return $this->_helper->redirector('index');
Wat probeer je te zeggen?Patriot schreef op vrijdag 24 juni 2011 @ 11:42:
[...]
Die vind ik nog wel grappigHet verliest zijn schoonheid een beetje omdat de redirect er dubbel in staat, maar het is niet echt superslecht. Het is misschien niet handig, omdat het ongebruikelijk is en sommige mensen het daarom misschien niet zo goed snappen, maar dat zijn dan toch prutsers
Volgens mij moest er eerst iets anders gebeuren dat later niet meer nodig was en dus is weggehaald. De if/else lieten ze echter staan...
Jouw college snapt het concept van 'niet' niet? (no phun intended)Verwijderd schreef op vrijdag 24 juni 2011 @ 09:53:
[...]
Mijn post was zeker geen troll... gisteren kwam mijn collega opeens met een eureka moment... hij deed exact hetzelfde als mijn post
Dus stuurde ik hem naar deze thread, liet hem lezen en dan zegt 'ie:
[...]


Ik dacht dat het een slim truukje was. Ze maken gebruik van de manier waarop de AND-operator verwerkt wordt om de delete actie alleen uit te voeren als $where ongelijk is aan "". Vooral grappig, omdat het op die manier kan, maar niet handig omdat het onduidelijk is.Verwijderd schreef op zaterdag 25 juni 2011 @ 20:20:
[...]
Zend framework!!
[...]
Wat probeer je te zeggen?
Volgens mij moest er eerst iets anders gebeuren dat later niet meer nodig was en dus is weggehaald. De if/else lieten ze echter staan...
Werkt dat uberhaupt wel? '&&' doet toch aan shortcircuiting (of niet in PHP) dus als $where ongelijk aan false is dan wordt de delete query helemaal overgeslagen toch? Of is het juist de bedoeling dat dit alleen gebeurt als $where false is? (In PHP weet ik nooit zo goed wanneer een variabele nu false is).Patriot schreef op zondag 26 juni 2011 @ 20:37:
[...]
Ik dacht dat het een slim truukje was. Ze maken gebruik van de manier waarop de AND-operator verwerkt wordt om de delete actie alleen uit te voeren als $where ongelijk is aan "". Vooral grappig, omdat het op die manier kan, maar niet handig omdat het onduidelijk is.
Verwijderd
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.
PHP doet ook aan short circuiting. Waarschijnlijk is het de bedoeling, want anders stond die controle op de waarde van $where er niet.roy-t schreef op zondag 26 juni 2011 @ 22:40:
[...]
Werkt dat uberhaupt wel? '&&' doet toch aan shortcircuiting (of niet in PHP) dus als $where ongelijk aan false is dan wordt de delete query helemaal overgeslagen toch? Of is het juist de bedoeling dat dit alleen gebeurt als $where false is? (In PHP weet ik nooit zo goed wanneer een variabele nu false is).
De code in Verwijderd in "[alg] Slechtste programmeervoorbeelden d..." is 100% equivalent.
Maar goed, ga gerust door met 50 reacties over de waanzin vd noodzaak voor de === en !== operators in PHP.
[ Voor 7% gewijzigd door Voutloos op 27-06-2011 00:02 ]
{signature}
Sorry, ik had beter moeten verwoorden wat ik bedoelde: dankzij PHP's geweldige type-casting-regels kan je, als je vergelijkt met $a == "", soms onverwachtse resultaten krijgen: hij zal vaker true retourneren dan je zou verwachten. Waarschijnlijk zelfs met $a = "0 whatever"..oisyn schreef op zondag 26 juni 2011 @ 23:58:
Er wordt nooit iets gecast naar "". Het probleem is meer dat "" gecast wordt naar 0.
De noodzaak van === en !== is niet zo gek in een weak-typed taal, alleen de standaard conversie regels zijn niet altijd even logisch/handigVoutloos schreef op maandag 27 juni 2011 @ 00:01:
[...]
Maar goed, ga gerust door met 50 reacties over de waanzin vd noodzaak voor de === en !== operators in PHP.
“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.”
Dat zowaar dan weer niet, want dat is een string. Als de twee operands van hetzelfde type zijn wordt er niets gecast.MBV schreef op maandag 27 juni 2011 @ 00:15:
Waarschijnlijk zelfs met $a = "0 whatever".
[ Voor 6% gewijzigd door .oisyn op 27-06-2011 10:41 ]
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.
Ja maar de where kan inderdaad ook een boolean zijn of een intVerwijderd schreef op woensdag 22 juni 2011 @ 20:52:
[...]
Is het zeker bedoeld als zoiets?
PHP:
1 2 3 4 if ($where !== "") { $this->_table->delete($where); } return $this->_helper->redirector('index');
Verder is er niet veel opmerkelijks te zien aan dat stukje code?
Verwijderd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| if (projectNames[i].Length > 15) { char[] charArr = projectNames[i].ToCharArray(); tempShortProjName = charArr[0].ToString(); tempShortProjName += charArr[1].ToString(); tempShortProjName += charArr[2].ToString(); tempShortProjName += charArr[3].ToString(); tempShortProjName += charArr[4].ToString(); tempShortProjName += charArr[5].ToString(); tempShortProjName += charArr[6].ToString(); tempShortProjName += charArr[7].ToString(); tempShortProjName += charArr[8].ToString(); tempShortProjName += charArr[9].ToString(); tempShortProjName += charArr[10].ToString(); tempShortProjName += charArr[11].ToString(); tempShortProjName += charArr[12].ToString(); tempShortProjName += charArr[13].ToString(); tempShortProjName += charArr[14].ToString(); tempShortProjName += "..."; } else { tempShortProjName = projectNames[i].ToString(); } |
Na de initiele schrok maar even vervangen door
1
| tempShortProjName = (projectNames[i].Length <= 15) ? projectNames[i] : projectNames[i].Substring(0, 15) + "..."; |
Verwijderd schreef op woensdag 29 juni 2011 @ 14:28:
Ik kwam vandaag deze tegen, enige doel is strings langer dan 15 tekens af te ronden:
[...]

[ Voor 59% gewijzigd door FragFrog op 29-06-2011 14:48 ]

Of vragen: "We willen je functie in verschillende contexten gebruiken, kun je het aantal tekens variabel maken?"FragFrog schreef op woensdag 29 juni 2011 @ 14:48:
[...]
voor de grap de developer vragen of hij het kan aanpassen naar 30 tekens, en net als hij klaar is zeggen: "Nee, dat is toch wat te lang, zet maar weer terug op 15"
[ Voor 61% gewijzigd door .oisyn op 29-06-2011 14:50 ]
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.
Zo scherp als een voetbal!
FragFrog schreef op woensdag 29 juni 2011 @ 14:48:
[...]
voor de grap de developer vragen of hij het kan aanpassen naar 30 tekens, en net als hij klaar is zeggen: "Nee, dat is toch wat te lang, zet maar weer terug op 15"
Oh heb je dat zo opgelost?..... ja dat kanYopY schreef op woensdag 29 juni 2011 @ 15:08:
[...]
als je collega er nog werkt zou je idd dat moeten doen. Soms kun je beter laten voelen dan zelf proberen te gaan corrigeren. Als je het sociale type bent (of wilt worden) kun je er beter nog naast gaan zitten en wat vriendelijke suggesties aanbieden, zo van 'En nu gaan we deze duplicatie vervangen door een eenvoudiger algoritme.' oid.
Nu met Land Rover Series 3 en Defender 90
Gewoon een Unicode 'ellipsis' (…) gebruiken en voor straf de applicatie breken omdat 'ie geen Unicode gebruikt.Reptile209 schreef op woensdag 29 juni 2011 @ 15:06:
En dan toch nog de mooie instinker dat een string van 16 tekens nu 2 tekens langer wordt, omdat het laatste teken wegvalt en er '...' aan wordt geplakt...
(Als we het toch over Unicode hebben: de huidige code telt UTF-16 surrogate pairs dubbel, en kan de string halverwege zo'n pair afkappen, wat natuurlijk verkeerd is.)
[ Voor 29% gewijzigd door Soultaker op 29-06-2011 15:39 ]
[ Voor 48% gewijzigd door .oisyn op 29-06-2011 15:43 ]
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.
Hoog tijd om het taalgebruik aan te passen, dus!.oisyn schreef op woensdag 29 juni 2011 @ 15:41:
Sterker nog, wellicht wordt er gewoon afgekapt in het midden van een surrogate pair. Maar goed, surrogate pairs in UTF-16 komen met ons dagelijks taalgebruik in de westerse wereld zo goed als niet voor.
Straks hebben we geen werk meer, x).
Ik kwam vandaag nog een mooie tegen wat dat betreft. Een functie die adhv een postcode plus huisnummer een straatnaam en plaats ophaalt. Mocht er niets gevonden worden wordt er een messagebox weergegeven met een melding en wordt er wel iets gevonden maar staat er al iets ingevuld dan wordt er gevraagd of die gegevens overschreven mogen worden.YopY schreef op woensdag 29 juni 2011 @ 15:08:
[...]
als je collega er nog werkt zou je idd dat moeten doen. Soms kun je beter laten voelen dan zelf proberen te gaan corrigeren. Als je het sociale type bent (of wilt worden) kun je er beter nog naast gaan zitten en wat vriendelijke suggesties aanbieden, zo van 'En nu gaan we deze duplicatie vervangen door een eenvoudiger algoritme.' oid.
Het huisnummer is echter optioneel, in dat geval vul je alleen de plaatsnaam. Goed, voor dat geval werd gewoon de hele logica gekopieerd, inclusief de messagebox + vraag bij overschrijving. Plus extra methods in de data-layers en een extra stored procedure want een parameter die de waarde null kan hebben is eng.
Goed. Bovenstaande functionaliteit is letterlijk 20x volledig uitgeprogrammeerd in de applicatie. En omdat de functie 2x zijn eigen functionaliteit bevat, zijn de foutmelding en vraag beiden dus 40x terug te vinden in de code.
Ach, nadat ik onderstaande tegenkwam in de code verbaas ik me nergens meer over...
1
2
3
4
| if( someBoolean == true ) someBoolean = true; else someBoolean = false; |
Gaius schreef op dinsdag 05 juli 2011 @ 18:35:
[...]
code:
1 2 3 4 if( someBoolean == true ) someBoolean = true; else someBoolean = false;
1
| someBoolean = someBoolean == true; |
Fixed.
Niet in een weekly-typed taaltje, zoals javascript of php. Dit kan ervoor zorgen dat er wat geheugen opnieuw gebruikt kan worden. Een voorbeeldje:Gaius schreef op dinsdag 05 juli 2011 @ 19:12:
Jullie denken te moeilijk. De someBoolean is dezelfde variable als die op true danwel false wordt geset, afhankelijk van zijn eigen waarde.
1
2
| $object = new Wereld(); $object = (bool)$object; // wereld bestond ooit, maar mag opgeruimd worden door de GC |
In C bestaat er niet eens een booleanMBV schreef op dinsdag 05 juli 2011 @ 20:18:
In C++ is een boolean volgens mij ook gewoon een char, dus kan je er ook 42 in zetten. !!someBool zorgt er dan voor dat je zeker weet of het true of false is.

In C99 kun je eventueel stdbool.h includen, maar dat geeft je een macro terug met _Bool, waarin true als 1 wordt behandeld en false als 0.
If money talks then I'm a mime
If time is money then I'm out of time
Dit topic is gesloten.
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.