Heb ik gedaan, maar om een of andere reden gaat dat soms verkeerd :Squote:
Het ging al lang niet meer over de OP.quote:
Best veel gedaan, en het is prima bruikbaar, maar 'loops' maken is enorm omslachtig.quote:Op vrijdag 7 oktober 2011 12:31 schreef raptorix het volgende:
In tegenstelling tot veel collega's vind ik XSLT erg fijn werken, ok leesbaarheid is soms wat vervelend als je er niet heel bekend mee bent, maar om 1 of andere reden vind ik het een mooie taal.
Bij hem heb ik ook ooit een vak over functioneel programmeren gevolgd. Zeer vermakelijk om colleges te volgen van zo'n knettergekke figuur.quote:Op vrijdag 7 oktober 2011 11:27 schreef Core2 het volgende:
Check deze serie van Erik Meijer, briljante gast:
http://channel9.msdn.com/(...)damentals-Chapter-1/
Die is ondertussen (Rails 3) goed stabiel, maar in eerste instantie was het wel echt een openbare beta-test, jaquote:Op vrijdag 7 oktober 2011 12:08 schreef raptorix het volgende:
[..]
Ik heb 1 dag Ruby geprobeerd, bij het scaffolden ging het al fout, hoewel het boek slechts 2 maanden oud was, bleek de syntax al niet meer te kloppen, en natuurlijk was het niet backwards compatible![]()
![]()
Vind je?quote:Op vrijdag 7 oktober 2011 12:34 schreef Catbert het volgende:
Best veel gedaan, en het is prima bruikbaar, maar 'loops' maken is enorm omslachtig.
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 | <xsl:for-each select="$items"> <div id="slide-{position()}" class="slide clearfix"> <figure> <xsl:if test="./visual !=''"> <img alt="slide" src="/ImageGen.ashx?image={umbraco.library:GetMedia(./visual, 'false')/umbracoFile}" /> </xsl:if> <xsl:if test="name(.) = 'BrandBox'"> <figcaption> <xsl:value-of select="./onderTitel"/> </figcaption> </xsl:if> </figure> <xsl:if test="name(.) = 'BrandBox'"> <section class="text-box-brandbox"> <h1> <xsl:value-of select="./headerTekst"/> </h1> <p> <xsl:value-of select="./tekst"/> </p> <a class="meer-btn" href="{umbraco.library:NiceUrl(./leesMeerUrl)}"> <xsl:value-of select="./leesMeerTekst"/> </a> </section> </xsl:if> </div> </xsl:for-each> |
Nu eentje waar je gewoon 10 iteraties wil doen (die bedoel ik). het is al weer een tijdje terug (4 jaar ofzo) dus ik ben kwa XSLT enorm roestigquote:
Kunnen programmeren is niet echt taal afhankelijk. En een "allround" programmeur heeft gewoon veel ervaring in een paar gangbare talen.quote:Op vrijdag 7 oktober 2011 13:53 schreef minibeer het volgende:
Ergens vind ik het jammer dat er zo veel programmeertalen zijn: om een expert te worden in een bepaalde taal moet je toch echt wel een jaar ervaring hebben. Dus je kan nooit een allround-expert worden die in elk project ingezet kan worden. Natuurlijk kan je wel een goede basis hebben, maar je mist altijd een groot deel, of dat nou de syntax of de standaardlibrary is (ik betwijfel trouwens of er mensen zijn die de hele standaardlibrary van talen als c#.net uit hun hoofd kennen).
Sowieso is het uit je hoofd kennen van hele talen, frameworks, e.d. onnodig, daar heb je goede IDEs met Intellisense / autoaanvulling voor. Vooral PHP`en zonder goede IDE is ellende, vanwege het welbekende $needle,$haystack / $haystack,$needle probleem. Beter weet je waar je oplossingen kunt zoeken, in plaats van onnodige zaken uit je kop je gaan knallen.quote:Op vrijdag 7 oktober 2011 13:53 schreef minibeer het volgende:
Ergens vind ik het jammer dat er zo veel programmeertalen zijn: om een expert te worden in een bepaalde taal moet je toch echt wel een jaar ervaring hebben. Dus je kan nooit een allround-expert worden die in elk project ingezet kan worden. Natuurlijk kan je wel een goede basis hebben, maar je mist altijd een groot deel, of dat nou de syntax of de standaardlibrary is (ik betwijfel trouwens of er mensen zijn die de hele standaardlibrary van talen als c#.net uit hun hoofd kennen).
Een taal is wat anders als een Library natuurlijk, je kan .NET namelijk via een hele berg talen aansprekenquote:Op vrijdag 7 oktober 2011 13:53 schreef minibeer het volgende:
Ergens vind ik het jammer dat er zo veel programmeertalen zijn: om een expert te worden in een bepaalde taal moet je toch echt wel een jaar ervaring hebben. Dus je kan nooit een allround-expert worden die in elk project ingezet kan worden. Natuurlijk kan je wel een goede basis hebben, maar je mist altijd een groot deel, of dat nou de syntax of de standaardlibrary is (ik betwijfel trouwens of er mensen zijn die de hele standaardlibrary van talen als c#.net uit hun hoofd kennen).
Bedoel je niet recusief? Dat kan idd lastig zijn in XSLTquote:Op vrijdag 7 oktober 2011 14:04 schreef Catbert het volgende:
[..]
Nu eentje waar je gewoon 10 iteraties wil doen (die bedoel ik). het is al weer een tijdje terug (4 jaar ofzo) dus ik ben kwa XSLT enorm roestig
[..]
Kunnen programmeren is niet echt taal afhankelijk. En een "allround" programmeur heeft gewoon veel ervaring in een paar gangbare talen.
Ik vind een jaar nogal overdreven overigens.
"Je weg kunnen vinden" is nogal wat anders dan "alles uit je hoofd weten"quote:Op vrijdag 7 oktober 2011 14:05 schreef raptorix het volgende:
En of iemand die hele library kent? Nou ik had wel een collega waarbij het aardig in de buurt kwam, maar die was dan ook beetje autistisch
Als je een component noemde, wist ie de hele namespace op te dreunenquote:Op vrijdag 7 oktober 2011 14:06 schreef Catbert het volgende:
[..]
"Je weg kunnen vinden" is nogal wat anders dan "alles uit je hoofd weten"
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | <xsl:template name="renderItems"> <xsl:param name="items"/> <xsl:param name="offset"/> <ul class="clearfix"> <xsl:for-each select="$items"> <xsl:if test="position()=number($offset) or position()=number($offset + 1)"> <li class="object-listitem-medium"> <figure> <xsl:if test="./icoon !=''"> <img width="75" height="74" alt="" src="/ImageGen.ashx?image={umbraco.library:GetMedia(./icoon, 'false')/umbracoFile}" /> </xsl:if> <figcaption> <h3> <a href="{$uspPagina}#a{@id}"> <xsl:value-of select="./titel"/> </a> </h3> <p> <xsl:value-of select="./intro"/> </p> </figcaption> </figure> </li> </xsl:if> </xsl:for-each> </ul> <xsl:if test="$offset < count($items)"> <xsl:call-template name="renderItems"> <xsl:with-param name="items" select="$items"/> <xsl:with-param name="offset" select="$offset+1"/> </xsl:call-template> </xsl:if> </xsl:template> </xsl:stylesheet> |
Niet zo nuttig m.i. Kan hier ook wel random spul gaan posten maar daar heeft niemand wat aan.quote:Op vrijdag 7 oktober 2011 14:07 schreef raptorix het volgende:
Hier stukje recursieve xslt die ik laatst moest schrijven
[ code verwijderd ]
Mwoah, gewoon om aan anderen te laten zien wat een ramp XSLT eigenlijk isquote:Op vrijdag 7 oktober 2011 14:08 schreef Catbert het volgende:
[..]
Niet zo nuttig m.i. Kan hier ook wel random spul gaan posten maar daar heeft niemand wat aan.
Het is niet zo zeer complex, wel vinden veel developers die er voor eerst naar kijken de structuur wazigquote:Op vrijdag 7 oktober 2011 14:21 schreef SecurityException het volgende:
Ik vind dat XSLT qua complexiteit wel meevallen eigenlijk. Maar goed, dit komt dan ook van iemand die nog aan Ikonboards (CGI en Perl) geknutseld heeft zo'n 12 jaren geleden.
Sinds Oracle iedere keer de J2EE Javadoc onder nieuwe URL's verstopt, zijn dat soort mensen veel meer waard gewordenquote:Op vrijdag 7 oktober 2011 14:07 schreef raptorix het volgende:
[..]
Als je een component noemde, wist ie de hele namespace op te dreunen
Nee tuurlijk is programmeren niet taal afhankelijk, maar het is niet zo als allround programmeur aan elk project gelijk mee kan doen (er worden altijd programmeurs met ervaring in ... gezocht), en dat vind ik jammer. En een jaar is inderdaad een beetje uit de lucht gegrepen, maar het hangt er natuurlijk van af wat je een expert noemt en hoeveel je in dat jaar met die taal bezig bent.quote:Op vrijdag 7 oktober 2011 14:04 schreef Catbert het volgende:
Kunnen programmeren is niet echt taal afhankelijk. En een "allround" programmeur heeft gewoon veel ervaring in een paar gangbare talen.
Ik vind een jaar nogal overdreven overigens.
Ik wens je veel succes met het schrijven van een snellere generics library in .netquote:Op vrijdag 7 oktober 2011 15:05 schreef minibeer het volgende:
[..]
Nee tuurlijk is programmeren niet taal afhankelijk, maar het is niet zo als allround programmeur aan elk project gelijk mee kan doen (er worden altijd programmeurs met ervaring in ... gezocht), en dat vind ik jammer. En een jaar is inderdaad een beetje uit de lucht gegrepen, maar het hangt er natuurlijk van af wat je een expert noemt en hoeveel je in dat jaar met die taal bezig bent.
En ik reken de library globaal kennen ook wel een beetje onder de kennis van een taal (hoewel dat strikt gesproken natuurlijk niet bij de taal hoort).
Ik ben ook eigenlijk voor zo veel mogelijk zelf programmeren, als je niet zeker wat er in de standaardlibrary gebeurt kan je wat mij betreft beter zelf iets programmeren (wel binnen bepaalde grenzen natuurlijk).
ik zeg toch, binnen bepaalde grenzenquote:Op vrijdag 7 oktober 2011 15:58 schreef raptorix het volgende:
[..]
Ik wens je veel succes met het schrijven van een snellere generics library in .net
Ik wil niet opscheppen, maar ik denk dat ik heel veel .NET types uit mijn hoofd kan benoemen (inclusief de volledige naam van de assembly waar deze deel van uit maakt).quote:Op vrijdag 7 oktober 2011 14:07 schreef raptorix het volgende:
[..]
Als je een component noemde, wist ie de hele namespace op te dreunen
Ik denk niet dat veel mensen jaloers op je zijn. Eigenlijk.quote:Op vrijdag 7 oktober 2011 19:15 schreef Devv het volgende:
[..]
Ik wil niet opscheppen, maar ik denk dat ik heel veel .NET types uit mijn hoofd kan benoemen (inclusief de volledige naam van de assembly waar deze deel van uit maakt).
Dat maakt niet uit hoor. Ik verdien er mijn geld mee, dus het is dagelijkse routine. Ik kan .NET bijna dromen. En dat is best wel handig.quote:Op vrijdag 7 oktober 2011 19:42 schreef minibeer het volgende:
[..]
Ik denk niet dat veel mensen jaloers op je zijn. Eigenlijk.
Ja, dat punt probeerde ik ook al te maken. Ik bedoel, er zal best wel wat tijd overheen gegaan zijn voordat je die library kende, of niet?quote:Op vrijdag 7 oktober 2011 20:05 schreef Devv het volgende:
[..]
Dat maakt niet uit hoor. Ik verdien er mijn geld mee, dus het is dagelijkse routine. Ik kan .NET bijna dromen. En dat is best wel handig.
Nee hoor. .Net (visual studio) heeft een ongelooflijk lekker werkende code aanvuller. Je hoeft geen enkele 'library uit je kop te kennen' om optimaal van de taal gebruik te kunnen maken. En voor de rest is er google. Ja, het werkt nèt even wat sneller als je meteen weet welke functies of classes in welke assembly zitten, maar via msdn zie je dat ook.quote:Op vrijdag 7 oktober 2011 20:38 schreef minibeer het volgende:
[..]
Ja, dat punt probeerde ik ook al te maken. Ik bedoel, er zal best wel wat tijd overheen gegaan zijn voordat je die library kende, of niet?
Ik kan me heel goed voorstellen dat het handig is, het bevalt me alleen niet zo dat je een groot deel van de library uit je kop moet kennen voordat je optimaal gebruik kan maken van de mogelijkheden van een taal.
Als je weet welke klasse je moet hebben, maar je bent de naam even vergeten wel, maar anders kan het wel eens een tijd duren voordat je vindt wat je bedoelt. Er zijn niet voor niks veel van die topics van 'hoe doe ik ... met c#/vb .net? op programmeerforums.quote:Op vrijdag 7 oktober 2011 22:06 schreef ralfie het volgende:
[..]
Nee hoor. .Net (visual studio) heeft een ongelooflijk lekker werkende code aanvuller. Je hoeft geen enkele 'library uit je kop te kennen' om optimaal van de taal gebruik te kunnen maken. En voor de rest is er google. Ja, het werkt nèt even wat sneller als je meteen weet welke functies of classes in welke assembly zitten, maar via msdn zie je dat ook.
Ternaire operators worden bij ons in de stijlregels gevlagd met lage prioriteit. Ja, ze kunnen nuttig zijn zolang de conditie heel eenvoudig is, maar zo gauw het iets complexer wordt (en zeker zo gauw je gaat nesten) zijn if/else constructies beter leesbaar en om de onderhoudbaarheid beter te maken wordt dus aangemoedigd om direkt maar met die if/else constructies te beginnen. Net zoals je bijv. bij 1-regel blocks achter een if ze toch verplicht met een accolade moet schrijven.quote:Op vrijdag 7 oktober 2011 23:54 schreef SecurityException het volgende:
of waarom ze geen 'ternary operators' gebruiken voor eenvoudige condities.
Dit is wel behoorlijk lang geleden dan, hij werkt al een hele tijd bij microsoft. Maar vet dat je colleges van hem gehad hebt, ik ben jaloersquote:Op vrijdag 7 oktober 2011 12:37 schreef thabit het volgende:
[..]
Bij hem heb ik ook ooit een vak over functioneel programmeren gevolgd. Zeer vermakelijk om colleges te volgen van zo'n knettergekke figuur.
1 2 3 4 5 | // manier 1 [object setProperty:@"whatever"]; // manier 2 object.property = @"whatever"; |
Heb ik ook wel wat positieve geluiden over gehoord. Misschien ook maar een beetje proberen als ik wat meer tijd hebquote:Op zaterdag 8 oktober 2011 23:17 schreef Henno het volgende:
Ik zit nu veel met Objective-C te werken, want iOS jeweet.
Ik ben zelf fervent voorstander van leesbare en duidelijke code dus gebruik ternary operators alleen voor hele eenvoudige condities.quote:Op zaterdag 8 oktober 2011 13:20 schreef Litpho het volgende:
[..]
Ternaire operators worden bij ons in de stijlregels gevlagd met lage prioriteit. Ja, ze kunnen nuttig zijn zolang de conditie heel eenvoudig is, maar zo gauw het iets complexer wordt (en zeker zo gauw je gaat nesten) zijn if/else constructies beter leesbaar en om de onderhoudbaarheid beter te maken wordt dus aangemoedigd om direkt maar met die if/else constructies te beginnen. Net zoals je bijv. bij 1-regel blocks achter een if ze toch verplicht met een accolade moet schrijven.
Allemaal overbodig als je de luxe hebt om met alleen maar briljante seniors te werken die nooit een off-day hebben. Dat is bij ons helaas niet altijd de realiteit.
De term leesbaar is ook maar relatief. Het ligt er meer aan hoe bereidwillig de persoon is die het moet lezen om dieper in de materie te duiken. Vaak is de capaciteit er wel om het te kunnen begrijpen, maar wordt het uit gemakzucht nooit gebruikt.quote:Op zondag 9 oktober 2011 00:02 schreef SecurityException het volgende:
[..]
Ik ben zelf fervent voorstander van leesbare en duidelijke code dus gebruik ternary operators alleen voor hele eenvoudige condities.In een class waar heel veel van die eenvoudige condities zitten kan het gebruik van ternary operators heel wat regeltjes schelen.
True, het .net framework is alleen zo groot. En vaak toch ook onlogisch, als je de achterliggende gedachten en technieken niet begrijpt. Voorbeeld: Ik moest ergens in een opdracht een string naar zijn sha1 hash omzetten. Ik had vrij snel door dat ik in de class System.Security.Cryptography moest zijn, alleen koos ik als n00b natuurlijk de SHA1 class uit om mee te kloten, en niet de SHA1CryptoServiceProvider. Als je wat ervarener bent met .NET snap je dan natuurlijk gelijk dat je die serviceprovider moet hebben, maar heel logisch is het niet. (en even om mijn eerste keuze voor de sha1 class te rechtvaardigen: er zit een hele waslijst aan klassen die met sha1 beginnen in die namespace, dus ik had die cryptoserviceprovider gewoon niet gezien)quote:Op vrijdag 7 oktober 2011 23:54 schreef SecurityException het volgende:
Het .NET framework is dan ook veel te omvangrijk om uit je hoofd te gaan leren. Belangrijker is als je maar weet waar je de oplossing moet zoeken wanneer je vast hangt. Zo heb ik van de week ook weer even op Internet moeten spieken hoe precies om te gaan met Serialization en de wijze van het omzetten naar XML. Heb ik al veel vaker mee gewerkt, maar als je het een tijdje niet gebruikt dan is een geheugensteuntje wel zo makkelijk. Sites als StackOverflow zit ik sowieso wekelijks wel een keer op te spieken.
Ook is het handig om bepaalde terminologie te kennen om dat zoeken eenvoudiger te maken. Ik krijg nog steeds vaak rare gezichten als ik programmeurs vraag waarom ze zo veel 'boxen', of waarom ze geen 'ternary operators' gebruiken voor eenvoudige condities.
Overigens is het .NET framework naar mijn mening erg logisch ingedeeld (nogmaals, mits je op de hoogte bent van hoe bepaalde zaken benoemd worden). Wil je met grafiekjes gaan freubelen? Dan weet je dat je in System.Drawing.BlaBla moet zoeken. Behoefte aan meertaligheid? System.Globalization.
Ja, maar het besparen op regeltjes is geen doel op zich (tenzij je werkt met mensen die alleen maar kunnen debuggen vanaf printouts - red het regenwoud!). Zeker met een team met grote niveauverschillen is code waarbij op een gegeven regel maar één ding tegelijk gebeurt vaak beter leesbaar (door iedereen, niet alleen door de schrijver/seniors) en dus onderhoudbaar.quote:Op zondag 9 oktober 2011 00:02 schreef SecurityException het volgende:
[..]
Ik ben zelf fervent voorstander van leesbare en duidelijke code dus gebruik ternary operators alleen voor hele eenvoudige condities.In een class waar heel veel van die eenvoudige condities zitten kan het gebruik van ternary operators heel wat regeltjes schelen.
Zeker is leesbaarheid relatief/subjectief, maar mooie toepassingen voor ternary operators vind k bijvoorbeeld:quote:Op zondag 9 oktober 2011 00:28 schreef Devv het volgende:
[..]
De term leesbaar is ook maar relatief. Het ligt er meer aan hoe bereidwillig de persoon is die het moet lezen om dieper in de materie te duiken. Vaak is de capaciteit er wel om het te kunnen begrijpen, maar wordt het uit gemakzucht nooit gebruikt.
Ik merk dit bijvoorbeeld op mijn werk. Daar gebruiken collega's nog heel veel de C# syntax van .NET 2.0 terwijl ik mijn syntax voor een groot gedeelte op .NET 4 richt. Daar is niets mis mee, maar het kan weleens tot Babylonische spraakverwarring leiden. En mijn collega's zijn echt geen beginners. Dit zijn programmeurs met ruime ervaring.
1 | Checkbox1.Checked = (Getal == 123); |
1 2 3 4 5 6 7 8 | if( Getal == 123) { Checkbox1.Checked = true; } else { Checkbox1.Checked = false; } |
1 | Checkbox1.Checked = (NullableGetal.HasValue ? (NullableGetal.Value == 123 || (NullableGetal.Value == 234 && (AnderGetal.HasValue ? AnderGetal.Value == 456 : false) )) : (AnderGetal.HasValue ? AnderGetal.Value == 456 : false)) |
1 | Label1.Text = "Dit " + Server.HtmlEncode(String1) + " is " + Server.HtmlEncode(String2) + " een " + Server.HtmlEncode(String3) + " regel " + Server.HtmlEncode(String4) + " met " + Server.HtmlEncode(String5) + " veel strings!"; |
1 2 3 4 5 6 7 8 | Label1.Text = string.Format( "Dit {1} is {2} een {3} regel {4} met {5} veel strings!", Server.HtmlEncode(String1), Server.HtmlEncode(String2), Server.HtmlEncode(String3), Server.HtmlEncode(String4), Server.HtmlEncode(String5) ); |
Voor simpele stringetjes naar SHA1 hashes om te zetten heb je toch ook alleen maar de SHA1 class in de System.Security.Cryptogaphy namespace (en de System.Text.ASCIIEncoding class) nodig?quote:Op zondag 9 oktober 2011 00:32 schreef minibeer het volgende:
[..]
True, het .net framework is alleen zo groot. En vaak toch ook onlogisch, als je de achterliggende gedachten en technieken niet begrijpt. Voorbeeld: Ik moest ergens in een opdracht een string naar zijn sha1 hash omzetten. Ik had vrij snel door dat ik in de class System.Security.Cryptography moest zijn, alleen koos ik als n00b natuurlijk de SHA1 class uit om mee te kloten, en niet de SHA1CryptoServiceProvider. Als je wat ervarener bent met .NET snap je dan natuurlijk gelijk dat je die serviceprovider moet hebben, maar heel logisch is het niet. (en even om mijn eerste keuze voor de sha1 class te rechtvaardigen: er zit een hele waslijst aan klassen die met sha1 beginnen in die namespace, dus ik had die cryptoserviceprovider gewoon niet gezien)
1 2 3 4 5 6 7 8 | public static string EncryptStringSHA1(string Input) { SHA1 Hash = SHA1.Create(); ASCIIEncoding Encoder = new ASCIIEncoding(); byte[] Combined = Encoder.GetBytes(Input); Hash.ComputeHash(Combined); return Convert.ToBase64String(Hash.Hash); } |
O, dat heb ik helemaal niet doorgehadquote:Op zondag 9 oktober 2011 12:34 schreef SecurityException het volgende:
[..]
Voor simpele stringetjes naar SHA1 hashes om te zetten heb je toch ook alleen maar de SHA1 class in de System.Security.Cryptogaphy namespace (en de System.Text.ASCIIEncoding class) nodig?
[ code verwijderd ]
Maar inderdaad, die geneste/verstopte/gespecialiseerde namespaces zijn in het begin lastig, ook bijvoorbeeld met de SQL/OleDB/Ado trukendoos. Maar je gaat dat patroon en de indeling op een gegeven moment wel doorkrijgen.
1 2 | SHA1CryptoServiceProvider scsp = new SHA1CryptoServiceProvider(); hash = BitConverter.ToString(scsp.ComputeHash(Encoding.ASCII.GetBytes(localCounter.ToString()))).Replace("-", "") |
Ik schrijf eigenlijk alles zoveel mogelijk uit, wat maakt het nou uit hoeveel regels het is? Qua performance maakt het geen ene moer uit en qua leesbaarheid is het stukken beter.quote:Op zondag 9 oktober 2011 12:26 schreef SecurityException het volgende:
[..]
Zeker is leesbaarheid relatief/subjectief, maar mooie toepassingen voor ternary operators vind k bijvoorbeeld:
[ code verwijderd ]
In plaats van
[ code verwijderd ]
Veel van die simpele statements scheelt aanzienlijk in regels, en dat vind iedereen wel prettig neem ik aan.Slecht gebruik van ternary operators vind ik sowieso als ze nested gebruikt worden, daar kun je de boel lekker Cryptografisch mee maken.
[ code verwijderd ]
Zoiets dus, dat kom je ook nog wel eens tegen.Of iets waar ik ook een gruwelijke hekel aan heb: inline String concatination met veel variabelen en statische waarden i.p.v. String.Fomat.
[ code verwijderd ]
i.p.v.
[ code verwijderd ]
Ik vind dit:quote:Op maandag 10 oktober 2011 13:36 schreef raptorix het volgende:
Ik schrijf eigenlijk alles zoveel mogelijk uit, wat maakt het nou uit hoeveel regels het is? Qua performance maakt het geen ene moer uit en qua leesbaarheid is het stukken beter.
1 2 3 4 5 6 7 8 | <?php if(i > 1) message = "Veel" else message = "Weinig" ?> |
1 2 3 | <?php message = i > 1 ? "Veel" : "Weinig" ?> |
Ik vind persoonlijk zelf handig dat je in eerste geval wat netter commentaar kan zetten.quote:Op maandag 10 oktober 2011 14:51 schreef Catbert het volgende:
[..]
Ik vind dit:
[ code verwijderd ]
Net zo leesbaar als:
[ code verwijderd ]
Ik ook. Tot de toekenningen en/of de testconditie groter worden. Dan wordt de uitgeschreven versie al gauw leesbaarder.quote:Op maandag 10 oktober 2011 14:51 schreef Catbert het volgende:
[..]
Ik vind dit:
[ code verwijderd ]
Net zo leesbaar als:
[ code verwijderd ]
1 2 3 4 5 6 | x = if i > 1 "Meer" else "Minder" end |
Tuurlijk. Maar dat is net zoals een boek: een coderegel mag niet langer zijn dan 40 karakters puur en alleen al omdat mensen moeite krijgen het 'verhaal' te volgen. Maar een ternary operator is op zich al een mooi middel om idioten uit je code te houdenquote:Op maandag 10 oktober 2011 16:21 schreef Litpho het volgende:
Ik ook. Tot de toekenningen en/of de testconditie groter worden. Dan wordt de uitgeschreven versie al gauw leesbaarder.
Als ik een euro zou krijgen voor het aantal (ex-)collega's wat ik al als voorbeeld onder de bus heb gelegd omdat zij wél en ik niet geloofde in code ownership...quote:Op maandag 10 oktober 2011 16:43 schreef Catbert het volgende:
[..]
Tuurlijk. Maar dat is net zoals een boek: een coderegel mag niet langer zijn dan 40 karakters puur en alleen al omdat mensen moeite krijgen het 'verhaal' te volgen. Maar een ternary operator is op zich al een mooi middel om idioten uit je code te houden
Och. Bij ons wordt code gewoon aangepast als het niet aan de stijlregels voldoet. En als mensen keer op keer de fout in gaan worden ze er gewoon door een collega op aangesproken.quote:Op maandag 10 oktober 2011 16:48 schreef Litpho het volgende:
Als ik een euro zou krijgen voor het aantal (ex-)collega's wat ik al als voorbeeld onder de bus heb gelegd omdat zij wél en ik niet geloofde in code ownership....
Dat kan wel met meerdere programmeertalen.quote:Op maandag 10 oktober 2011 22:04 schreef sebasie20 het volgende:
Leer c++ dan kan je mooie programmas maken, virusscanners enzo.
Waarom zou je in hemelsnaam een virusscanner willen gaan maken in je eentje?quote:Op maandag 10 oktober 2011 22:04 schreef sebasie20 het volgende:
Leer c++ dan kan je mooie programmas maken, virusscanners enzo.
Sterker nog; dat kan met elke turing-complete taalquote:Op maandag 10 oktober 2011 22:05 schreef themole het volgende:
Dat kan wel met meerdere programmeertalen.
Definieer 'de fout'. Ik heb zo'n autist op het werk die vind dat alle code volgens zijn manier geschreven dient te worden, dat mensen die ternary operators gebruikt dood moeten, en meer van zulk ongein.quote:Op maandag 10 oktober 2011 17:27 schreef Catbert het volgende:
[..]
Och. Bij ons wordt code gewoon aangepast als het niet aan de stijlregels voldoet. En als mensen keer op keer de fout in gaan worden ze er gewoon door een collega op aangesproken.
Of je het wil is een tweede.quote:Op maandag 10 oktober 2011 22:06 schreef Catbert het volgende:
[..]
Sterker nog; dat kan met elke turing-complete taal
Niet volgen van binnen de organisatie afgesproken regels.quote:
Ja, dat soort mensen hadden ze nooit uit hun kelder moeten latenquote:Ik heb zo'n autist op het werk die vind dat alle code volgens zijn manier geschreven dient te worden, dat mensen die ternary operators gebruikt dood moeten, en meer van zulk ongein.
Het belangrijkste van goedgeschreven code lijkt mij goede documentatie. Elke klasse en elke functie van een kort stukje documentatie voorzien: een korte beschrijving van wat het doet, waar de input aan moet voldoen, wat het precies output, bijzonderheden, gebruikte algoritmen, en tenminste 1 voorbeeld.quote:Op maandag 10 oktober 2011 22:07 schreef Scorpie het volgende:
[..]
Definieer 'de fout'. Ik heb zo'n autist op het werk die vind dat alle code volgens zijn manier geschreven dient te worden, dat mensen die ternary operators gebruikt dood moeten, en meer van zulk ongein.
|
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |