[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 ... 61 ... 103 Laatste
Acties:
  • 993.641 views

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

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!

  • WVL_KsZeN
  • Registratie: Oktober 2002
  • Laatst online: 01-10 22:48
koekje voor Akathos :)

Best domme fout imo.. ipv het resetten van bit x werden dus bits 0 t/m (x-1) gereset :D

Beetje raar dat dit nooit is opgevallen in al die jaren :?

/me heeft eindelijk ook een icoontje.. woef.. boeien..


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Waarom noem je een variabele die een mask bevat "ibit" :?

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!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

WVL_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 :D
uhh...ook niet? er wordt ge-AND met negatieve mask

Acties:
  • 0 Henk 'm!

  • WVL_KsZeN
  • Registratie: Oktober 2002
  • Laatst online: 01-10 22:48
Geen idee... Het is ook al oeroude code, gebruik het zelf eigenlijk ook niet. Ivm de compatibiliteit met alle legacy systemen wordt alles nog steeds ook in C geschreven.

/me heeft eindelijk ook een icoontje.. woef.. boeien..


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
EddoH schreef op dinsdag 21 juni 2011 @ 16:48:
[...]


uhh...ook niet? er wordt ge-AND met negatieve mask
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 31% gewijzigd door PrisonerOfPain op 21-06-2011 16:51 ]


Acties:
  • 0 Henk 'm!

  • ID-College
  • Registratie: November 2003
  • Laatst online: 19:39
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?

Acties:
  • 0 Henk 'm!

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
Niet echt fout, en ook niet een slecht voorbeeld, maar je ziet veel:
Of gewoon "return $result ? true : false" of "return !!$result" of "return $result" (niet in PHP).

Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
Wat dacht je van 'return $result;'

Acties:
  • 0 Henk 'm!

  • Gleighton
  • Registratie: November 2008
  • Niet online
ID-College schreef op dinsdag 21 juni 2011 @ 16:50:
.....
ook gewoon werkt.. Waarom gebruikt met dan else? dat is toch helemaal niet nodig?
PHP:
1
2
3
4
function checkData($data){
  //doe wat
  return $result;
}

?

Acties:
  • 0 Henk 'm!

  • WVL_KsZeN
  • Registratie: Oktober 2002
  • Laatst online: 01-10 22:48
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.
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.

[ Voor 6% gewijzigd door WVL_KsZeN op 21-06-2011 16:54 ]

/me heeft eindelijk ook een icoontje.. woef.. boeien..


Acties:
  • 0 Henk 'm!

  • martijnve
  • Registratie: December 2004
  • Laatst online: 18:20
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?
Doe het dan meteen zo: :+
PHP:
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


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 30-09 16:40

Janoz

Moderator Devschuur®

!litemod

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?
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)

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!

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

Onbekend

...

In php natuurlijk zo: :+
PHP:
1
2
3
4
function checkData($data){
  //doe wat
  return ($result === true);
}

Speel ook Balls Connect en Repeat


Acties:
  • 0 Henk 'm!

  • martijnve
  • Registratie: December 2004
  • Laatst online: 18:20
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);
}
Als $result geen boolean is is dat niet hetzelfde

Mini-ITX GamePC: Core i5 3470 | 16GB DDR3 | GTX 970 4GB | Samsung 830 128GB | Dell u2711 (27", IPS,1440p), 2343BW


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
martijnve schreef op dinsdag 21 juni 2011 @ 16:53:
@Gleighton en PrisonerOfPain:
dat is niet hetzelfde als $result geen boolean is
Och, het je kunt $result blijkbaar als hoedanig gebruiken dus zo boeiend is dat niet.

Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

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.
Dat bedoelde ik ook?
Oftewel, zoals .oisyin al aangaf (1 << ibit) van maken dus :)

Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 18:14
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);
}
Liever gebruik je een cast:
PHP:
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 :)
PrisonerOfPain schreef op dinsdag 21 juni 2011 @ 16:59:
Och, het je kunt $result blijkbaar als hoedanig gebruiken dus zo boeiend is dat niet.
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.

[ Voor 22% gewijzigd door FragFrog op 21-06-2011 17:08 ]

[ Site ] [ twitch ] [ jijbuis ]


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
EddoH schreef op dinsdag 21 juni 2011 @ 17:02:
[...]


Dat bedoelde ik ook?
Oftewel, zoals .oisyin al aangaf (1 << ibit) van maken dus :)
Huh, maar ibit is geen bitpositie als je naar de andere twee macros kijkt.

Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

Nee maar dat doet de naamgeving wel vermoeden, en dat stinkt.

Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
EddoH schreef op dinsdag 21 juni 2011 @ 17:06:
Nee maar dat doet de naamgeving wel vermoeden, en dat stinkt.
Namen zijn overrated >:)

Acties:
  • 0 Henk 'm!

  • yade
  • Registratie: Mei 2002
  • Laatst online: 16-07 13:47
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. ;)

[ Voor 66% gewijzigd door yade op 21-06-2011 17:16 ]


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
yade schreef op dinsdag 21 juni 2011 @ 17:08:
Ligt het aan mij of wordt er nu gewoon getrolld?
Nee de code is gewoon bagger. We zijn er alleen nog niet uit hoe bagger ;)

Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

yade schreef op dinsdag 21 juni 2011 @ 17:08:
Ligt het aan mij of wordt er nu gewoon getrolld?
Ligt aan jou. ;)

Acties:
  • 0 Henk 'm!

  • Joostje123
  • Registratie: September 2010
  • Laatst online: 15:39
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.

Acties:
  • 0 Henk 'm!

  • TJHeuvel
  • Registratie: Mei 2008
  • Niet online
Checked?
martijnve schreef op dinsdag 21 juni 2011 @ 16:53:
lol die !!$result is wel creatief
Inderdaad, casten naar een bool in PHP is nogal hacky:

PHP:
1
2
$str = "false";
var_dump(!!$str); //Niet niet str!

[ Voor 65% gewijzigd door TJHeuvel op 21-06-2011 17:23 ]

Freelance Unity3D developer


Acties:
  • 0 Henk 'm!

  • F.West98
  • Registratie: Juni 2009
  • Laatst online: 01:33

F.West98

Alweer 16 jaar hier

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.
redelijk slecht... 2x dezelfde id? dan wordt dus ook NEE eerst aan en dan uitgevinkt...

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


Acties:
  • 0 Henk 'm!

  • Salandur
  • Registratie: Mei 2003
  • Laatst online: 19:12

Salandur

Software Engineer

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.
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.

Assumptions are the mother of all fuck ups | iRacing Profiel


Acties:
  • 0 Henk 'm!

  • ID-College
  • Registratie: November 2003
  • Laatst online: 19:39
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)
Het was een voorbeeld, ik snap dat natuurlijk ook wel, maar als je iets moest testen en kijken of het true of false is..
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..

Acties:
  • 0 Henk 'm!

  • ZpAz
  • Registratie: September 2005
  • Laatst online: 01:04
PrisonerOfPain schreef op dinsdag 21 juni 2011 @ 11:11:
[...]


Dat is lang geleden :w eprog ftw :)
Ja ben wel benieuwd hoe ver eDot is met het nieuwe e-programmeur.... :P

Tweakers Time Machine Browser Extension | Chrome : Firefox


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
ZpAz schreef op dinsdag 21 juni 2011 @ 17:43:
[...]


Ja ben wel benieuwd hoe ver eDot is met het nieuwe e-programmeur.... :P
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 :o

Acties:
  • 0 Henk 'm!

  • ZpAz
  • Registratie: September 2005
  • Laatst online: 01:04
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 :)

Tweakers Time Machine Browser Extension | Chrome : Firefox


Acties:
  • 0 Henk 'm!

Verwijderd

Dat was niet de fout. Je hebt gelijk dat het een betere manier is, maar de bug zat in wat ik aangaf.

Acties:
  • 0 Henk 'm!

  • WernerL
  • Registratie: December 2006
  • Nu online
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 :o
Is jacq.com ook al dood? :o
* WernerL was Werie op eprog overigens.

Leuk om wat oude Eproggers terug te zien. :D

Roses are red, violets are blue, unexpected '{' on line 32.


Acties:
  • 0 Henk 'm!

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
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. :D

We are shaping the future


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd 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.
Dat weet jij net zo goed niet, want je hebt de aanroepen niet gezien, dus we konden alleen uitgaan van de naamgeving ;)

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!

Verwijderd

.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 ;)
Daar heb je gelijk in, maar de volgende code heeft (in ieder geval, bij mij) geen effect:

C:
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 :P.

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 :P. Overigens wel een knappe typo, de ~ zit zo'n beetje aan de andere kant van het toetsenbord...

[ Voor 19% gewijzigd door Verwijderd op 21-06-2011 23:59 ]


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
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...
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.)

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


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
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.)
Doet me denken aan een fout(je) die wij in een vorig project deden, :/.

<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, :+. Lijkt erop dat Firefox 3 als enige de webstandaarden wat dat betreft volgde, dus eigenlijk was Firefox 3 de enige die het goed deed (door het niet te doen).

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.

Acties:
  • 0 Henk 'm!

Verwijderd

Het is de bedoeling dat browsers zo goed mogelijk een site proberen te renderen, ipv dat ze zich 100% aan de standaard moeten houden ;)

Acties:
  • 0 Henk 'm!

  • Tsunami
  • Registratie: Juni 2002
  • Niet online
De W3C validator had je inderdaad gewoon verteld dat IDs met een letter moeten beginnen, dus ja, wiens schuld is het dan ;)

Acties:
  • 0 Henk 'm!

  • Dragor
  • Registratie: Juni 2003
  • Laatst online: 08-02 11:04
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 ;)
Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd 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 :P.

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 :P. Overigens wel een knappe typo, de ~ zit zo'n beetje aan de andere kant van het toetsenbord...
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)
Dragor schreef op woensdag 22 juni 2011 @ 10:29:
[...]


Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?
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.

[ 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.


Acties:
  • 0 Henk 'm!

  • CoolGamer
  • Registratie: Mei 2005
  • Laatst online: 30-09 23:08

CoolGamer

What is it? Dragons?

Alhoewel ik de standaard niet heb nagelezen op dit punt, denk ik niet dat er gespecificeerd staat hoe een browser met deze situatie om moet gaan. En als het niet gespecificeerd staat, dan is de keuze aan de mensen die het implementeren.

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.
Dragor schreef op woensdag 22 juni 2011 @ 10:29:
[...]
Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?
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.

¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
WernerL schreef op dinsdag 21 juni 2011 @ 19:20:
[...]


Is jacq.com ook al dood? :o
* WernerL was Werie op eprog overigens.

Leuk om wat oude Eproggers terug te zien. :D
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 spelde :o )
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 :)
Dat was toch het broertje van High-Voltage? Waar zijn die eigenlijk heen verhuist?
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. :D
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. :D

Acties:
  • 0 Henk 'm!

  • ZpAz
  • Registratie: September 2005
  • Laatst online: 01:04
Dat was toch het broertje van High-Voltage? Waar zijn die eigenlijk heen verhuist?
Jep, het broertje van die gozer met een antenne op z'n fiets :D Verhuist als in letterlijk? Ze woonden in Belgie. HV zie je heel soms hier op Tweakers een berichtje plaatsen.

Tweakers Time Machine Browser Extension | Chrome : Firefox


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
ZpAz schreef op woensdag 22 juni 2011 @ 11:26:
[...]


Jep, het broertje van die gozer met een antenne op z'n fiets :D Verhuist als in letterlijk? Ze woonden in Belgie. HV zie je heel soms hier op Tweakers een berichtje plaatsen.
Nee niet letterlijk; was benieuwd waar ze nu rondhingen op internet :)

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 30-09 16:40

Janoz

Moderator Devschuur®

!litemod

We zitten hier in het slechte programmeer voorbeelden topic. Ik zie dan ook graag slechte programmeer voorbeelden. Bijkletsen kan in de HK, via DM of in de koffie corner.

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'


Acties:
  • 0 Henk 'm!

Verwijderd

Dragor schreef op woensdag 22 juni 2011 @ 10:29:
[...]


Wat is het nut van die standaard dan als iedere browser er vanaf mag wijken?
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.

Acties:
  • 0 Henk 'm!

  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 22-07-2024
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.
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)

Dan bouw je toch gewoon activeX in je browser?

This message was sent on 100% recyclable electrons.


Acties:
  • 0 Henk 'm!

  • Slurpie
  • Registratie: Oktober 2004
  • Laatst online: 01-10 20:21
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');

Acties:
  • 0 Henk 'm!

  • Davio
  • Registratie: November 2007
  • Laatst online: 06-01 16:46
Netjes !== gebruiken en dan failen met de if-else. :9

Acties:
  • 0 Henk 'm!

Verwijderd

.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)
Daar heb je natuurlijk helemaal gelijk in. En in het licht van dit topic is dat inderdaad meer de WTF dan het min-teken :P.

Acties:
  • 0 Henk 'm!

Verwijderd

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');
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? :9

Acties:
  • 0 Henk 'm!

Verwijderd

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? :9
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

[ Voor 11% gewijzigd door Verwijderd op 22-06-2011 21:08 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Natuurlijk "werkt" dat, maar het doet niet hetzelfde (met name als $where === 0)

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!

Verwijderd

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
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:
code:
1
2
3
<?php
var_dump(0 !== ""); // bool(true)
var_dump(0 != ""); // bool(false)

Acties:
  • 0 Henk 'm!

  • PdeBie
  • Registratie: Juni 2004
  • Laatst online: 18:19
kwam net op het ASP NET forum de volgende foutafhandeling tegen :+
JavaScript:
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
Kortom: Als de foutmelding is 'Input string was not in a correct format.'. Dan negeer hem gewoon maar :+

8)7

[ Voor 3% gewijzigd door PdeBie op 23-06-2011 11:21 . Reden: code-tags toegevoegd ]


Acties:
  • 0 Henk 'm!

  • Mint
  • Registratie: Mei 2005
  • Laatst online: 01-10 16:53
Ik betrap mezelf op de volgende fout:

Java:
1
2
3
4
5
6
7
8
9
public class UserManager {
public UserManager() {
//blabla
}

public UserManager getUsermanager() {
return this;
}
}


Goeiemorgen 8)7

Acties:
  • 0 Henk 'm!

  • CoolGamer
  • Registratie: Mei 2005
  • Laatst online: 30-09 23:08

CoolGamer

What is it? Dragons?

Mislukte poging om een singleton te maken? :P

¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸


Acties:
  • 0 Henk 'm!

  • Mint
  • Registratie: Mei 2005
  • Laatst online: 01-10 16:53
TheCoolGamer schreef op donderdag 23 juni 2011 @ 11:26:
Mislukte poging om een singleton te maken? :P
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. :+

Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

adyta schreef op donderdag 23 juni 2011 @ 11:24:
Ik betrap mezelf op de volgende fout:

Java:
1
2
3
public class UserManager {
...
}


Goeiemorgen
Heuj...jatbak...
Net bezig met:
code:
1
2
3
4
class FCUserManager
{
...
}


:+

Acties:
  • 0 Henk 'm!

  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
Je bent pas echt pro bezig met een
code:
1
FCUserManagerFactoryBuilderDirector


Toch?

We are shaping the future


Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

Shit je hebt gelijk.....
Refactoren!

Acties:
  • 0 Henk 'm!

  • .Gertjan.
  • Registratie: September 2006
  • Laatst online: 17-02 21:20

.Gertjan.

Owl!

Alex) schreef op donderdag 23 juni 2011 @ 14:27:
Je bent pas echt pro bezig met een
code:
1
FCUserManagerFactoryBuilderDirector


Toch?
Yo Dawg, I heard you liked patterns. So I put a pattern in your pattern so you can pattern while you pattern :+
En dat is dan weer een decorator pattern :P

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.


Acties:
  • 0 Henk 'm!

Verwijderd

yade 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. ;)
Mijn post was zeker geen troll... gisteren kwam mijn collega opeens met een eureka moment... hij deed exact hetzelfde als mijn post :D
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 ;)

Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 14:01

Patriot

Fulltime #whatpulsert

WernerL schreef op dinsdag 21 juni 2011 @ 19:20:
[...]


Is jacq.com ook al dood? :o
* WernerL was Werie op eprog overigens.

Leuk om wat oude Eproggers terug te zien. :D
Helaas wel ja :'( Daar heb ik mijn halve jeugd doorgebracht :+
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');
Die vind ik nog wel grappig :+ Het 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 :P

[ Voor 51% gewijzigd door Patriot op 24-06-2011 11:43 ]


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
EddoH schreef op donderdag 23 juni 2011 @ 14:33:
Shit je hebt gelijk.....
Refactoren!
* 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?

Acties:
  • 0 Henk 'm!

Verwijderd

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');
Zend framework!!
Patriot schreef op vrijdag 24 juni 2011 @ 11:42:

[...]


Die vind ik nog wel grappig :+ Het 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 :P
Wat probeer je te zeggen? :P

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...

Acties:
  • 0 Henk 'm!

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 19-09 10:19
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 :D
Dus stuurde ik hem naar deze thread, liet hem lezen en dan zegt 'ie:

[...]
Jouw college snapt het concept van 'niet' niet? (no phun intended) 8)7 8)7 nouja dat en een paar posts terug een webdev die niet weet wat een hash is maakt dit wel echt het slechte programmeer voorbeeld topic :)

~ Mijn prog blog!


Acties:
  • 0 Henk 'm!

  • Patriot
  • Registratie: December 2004
  • Laatst online: 14:01

Patriot

Fulltime #whatpulsert

Verwijderd schreef op zaterdag 25 juni 2011 @ 20:20:
[...]

Zend framework!!

[...]

Wat probeer je te zeggen? :P

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...
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.

Acties:
  • 0 Henk 'm!

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 19-09 10:19
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.
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).

~ Mijn prog blog!


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
Dat is juist heel simpel, omdat !== wordt gebruikt: hij wordt nooit uitgevoerd als $where === "", oftewel als $where een string is met lege inhoud (zonder type conversie).

Acties:
  • 0 Henk 'm!

Verwijderd

Aha ik snap hem :P Is het dan niet handiger om gewoon != te gebruiken, omdat als de string geen lege inhoud heeft, hij alsnog false kan zijn, en dan alsnog de delete faalt..

Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
Dan wordt ik ineens nieuwgierig wat delete(true) gaat doen... de code is sowieso hopeloos, != maakt het niet veel beter (zelfs slechter: de halve wereld wordt gecast naar "" in een vergelijking met ==...)

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Er wordt nooit iets gecast naar "". Het probleem is meer dat "" gecast wordt naar 0.

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!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
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).
PHP doet ook aan short circuiting. Waarschijnlijk is het de bedoeling, want anders stond die controle op de waarde van $where er niet.

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}


Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
.oisyn schreef op zondag 26 juni 2011 @ 23:58:
Er wordt nooit iets gecast naar "". Het probleem is meer dat "" gecast wordt naar 0.
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".

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Voutloos 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. ;)
De noodzaak van === en !== is niet zo gek in een weak-typed taal, alleen de standaard conversie regels zijn niet altijd even logisch/handig

“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!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

MBV schreef op maandag 27 juni 2011 @ 00:15:
Waarschijnlijk zelfs met $a = "0 whatever".
Dat zowaar dan weer niet, want dat is een string. Als de twee operands van hetzelfde type zijn wordt er niets gecast.

[ 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.


Acties:
  • 0 Henk 'm!

  • Slurpie
  • Registratie: Oktober 2004
  • Laatst online: 01-10 20:21
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? :9
Ja maar de where kan inderdaad ook een boolean zijn of een int ;) er word alleen getest of het geen lege string is. Daarbij zit er ook geef fout afhandeling in of what so ever als het wel er niks gedelete word.. ook niks als er wel wat gedelete wordt ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Ik kwam vandaag deze tegen, enige doel is strings langer dan 15 tekens af te ronden:
C#:
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
C#:
1
tempShortProjName = (projectNames[i].Length <= 15) ? projectNames[i] : projectNames[i].Substring(0, 15) + "...";

Acties:
  • 0 Henk 'm!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 18:14
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:
[...]
_O- 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 59% gewijzigd door FragFrog op 29-06-2011 14:48 ]

[ Site ] [ twitch ] [ jijbuis ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

Maar wat voor douchebag ben je dan? Even los van het feit dat ie geen substring gebruikt, doe dan op z'n minst een for-loopje 8)7
FragFrog schreef op woensdag 29 juni 2011 @ 14:48:
[...]

_O- 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" })
Of vragen: "We willen je functie in verschillende contexten gebruiken, kun je het aantal tekens variabel maken?"

[ 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.


Acties:
  • 0 Henk 'm!

  • Reptile209
  • Registratie: Juni 2001
  • Laatst online: 18:10

Reptile209

- gers -

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... :)

Zo scherp als een voetbal!


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
FragFrog schreef op woensdag 29 juni 2011 @ 14:48:
[...]

_O- 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" })
:D 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.

Acties:
  • 0 Henk 'm!

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

YopY schreef op woensdag 29 juni 2011 @ 15:08:
[...]


:D 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.
Oh heb je dat zo opgelost?..... ja dat kan
})

Nu met Land Rover Series 3 en Defender 90


Acties:
  • 0 Henk 'm!

  • Davio
  • Registratie: November 2007
  • Laatst online: 06-01 16:46
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... :)
Gewoon een Unicode 'ellipsis' (…) gebruiken en voor straf de applicatie breken omdat 'ie geen Unicode gebruikt.

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 16:32
Dan moet je 'm nog afkappen na 14 karakters om het totaal tot 15 karakters te beperken. ;)
(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 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-10 23:36

.oisyn

Moderator Devschuur®

Demotivational Speaker

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.

[ 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.


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 16:55
.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.
Hoog tijd om het taalgebruik aan te passen, dus!

Straks hebben we geen werk meer, x).

Acties:
  • 0 Henk 'm!

  • Gaius
  • Registratie: September 2001
  • Niet online
YopY schreef op woensdag 29 juni 2011 @ 15:08:
[...]


:D 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.
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.

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. :D

Ach, nadat ik onderstaande tegenkwam in de code verbaas ik me nergens meer over...
code:
1
2
3
4
if( someBoolean == true )
    someBoolean = true;
else
    someBoolean = false;


:'(

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Gaius schreef op dinsdag 05 juli 2011 @ 18:35:
[...]

code:
1
2
3
4
if( someBoolean == true )
    someBoolean = true;
else
    someBoolean = false;


:'(
code:
1
someBoolean = someBoolean == true;

Fixed. :P

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • Aloys
  • Registratie: Juni 2005
  • Niet online
In php zou dat nog best begrijpelijk zijn :P

Want dan kan je zorgen dat
x == true ook x=== true is :+

Acties:
  • 0 Henk 'm!

  • Tsunami
  • Registratie: Juni 2002
  • Niet online
Alleen kan je dat ook korter schrijven als
code:
1
someBoolean = !!someBoolean;

;)

Acties:
  • 0 Henk 'm!

  • Gaius
  • Registratie: September 2001
  • Niet online
Jullie denken te moeilijk. De someBoolean is dezelfde variable als die op true danwel false wordt geset, afhankelijk van zijn eigen waarde. :P

Acties:
  • 0 Henk 'm!

  • Feanathiel
  • Registratie: Juni 2007
  • Niet online

Feanathiel

Cup<Coffee>

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. :P
Niet in een weekly-typed taaltje, zoals javascript of php. Dit kan ervoor zorgen dat er wat geheugen opnieuw gebruikt kan worden. Een voorbeeldje:

PHP:
1
2
$object = new Wereld();
$object = (bool)$object; // wereld bestond ooit, maar mag opgeruimd worden door de GC

Acties:
  • 0 Henk 'm!

  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-10 21:27
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.

Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 01-10 21:01

Matis

Rubber Rocket

MBV 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 C bestaat er niet eens een boolean *O*
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


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 16:32
Matis schreef op dinsdag 05 juli 2011 @ 21:38:
In C bestaat er niet eens een boolean *O*
Onzin.
Pagina: 1 ... 61 ... 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. :)