Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[Alg] Programmeerstijl*

Pagina: 1 2 Laatste
Acties:
  • 282 views sinds 30-01-2008
  • Reageer

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
OnTracK schreef op 05 januari 2004 @ 21:36:
ohja, en nog wat: hoe wou jij 5 bij "blaat" optellen, als het nou "5" was (hence the quotes), meestal krijg je toch NaN (Not a Number) of iets in die trand
offtopic:
In PHP zeg maar....

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Fatamorgana schreef op 05 januari 2004 @ 21:31:
[...]

Natuurlijk hergebruik ik ook veel, ik schrijf alles alleen zo kort mogelijk op en houd het goed leesbaar. :)
Tja, maar wat win je er dan mee? Als je die code 2 maanden later gaat gaan herbekijken, ben je een hele hoop tijd kwijt met uitvogelen wat die code nu weer precies deed, of waarom het zo geschreven was.

Het is belangrijk dat je goeie, duidelijke namen gebruikt voor je variabelen en functies.
Het lui zijn van een programmeur, gaat dan ook over iets anders:
- werk in de toekomst vermijden; schrijf je code zodanig dat je bepaalde code kunt hergebruiken, zorg dat je veranderingen makkelijk kunt opvangen, etc.... Lui zijn heeft niets te maken met zo weinig mogelijk willen typen enzo.
(Met de IntelliSense enzo van tegenwoordig hoef je trouwens al niet meer zoveel te typen als vroeger).

https://fgheysels.github.io/


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:41

gorgi_19

Kruimeltjes zijn weer op :9

Spider.007 schreef op 05 januari 2004 @ 21:41:
Weg met overbodige regels! dat kost alleen maar kostbare bytes in je programmeercode
Jij sloopt zeker ook al je comments uit je code? :?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Wolfboy schreef op 05 januari 2004 @ 21:31:
tja zo doe ik het gewoon al een tijdje, misschien dat ik nog wel een keer van stijl ga veranderen hoor, ik moet zeggen dat dit:
ook wel netjes is, maar dat neemt weer zoveel ruimte in :P
Zal ik het antwoord dan maar geven waarom ik de stijl in jouw voorbeeld wazig vind?

Achter de conditie van het if statement zet je geen accolade. Die zet je op de volgende regel. Daarentegen zet je bij de andere conditie (de else in dit geval), wel meteen een accolade erachter. Doe het dan op 1 van je 2 manieren, maar ga ze niet mixen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if (conditie) {
   foo;
} else {
   bar;
}

if (conditie)
{
   foo;
}
else
{
   bar;
}
OnTracK schreef op 05 januari 2004 @ 21:36:
ongeveer Wolfboy's stijl (en wel van meer mensen), alleen een paar returns gescrapt zodat het minder ruimte inneemt. verder altijd tabs voor gelijke uitlijning[norml]
[/]
code:
1
2
3
4
5
6
if (NewVar == "blaat")
{    NewVar += 5;
     Function2();
} else
{    NewVar ++;
}
offtopic:
waarom moet ik nou weer [norml] gebruiken om een extra return tussen mijn tekst en code te krijgen
En dat vind ik dus echt redelijk ranzig als ik eerlijk ben.

Dat is toch nooit overzichtelijk te noemen of wel?
Programmeer je wel eens in groeps/team verband?
gorgi_19 schreef op 05 januari 2004 @ 21:45:
[...]

Jij sloopt zeker ook al je comments uit je code? :?
LOL :P

/me verwacht nu als antwoord: "Welke comments :? "

[ Voor 10% gewijzigd door Verwijderd op 05-01-2004 21:52 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:41

gorgi_19

Kruimeltjes zijn weer op :9

whoami schreef op 05 januari 2004 @ 21:45:
Het is belangrijk dat je goeie, duidelijke namen gebruikt voor je variabelen en functies.
Het lui zijn van een programmeur, gaat dan ook over iets anders:
- werk in de toekomst vermijden; schrijf je code zodanig dat je bepaalde code kunt hergebruiken, zorg dat je veranderingen makkelijk kunt opvangen, etc.... Lui zijn heeft niets te maken met zo weinig mogelijk willen typen enzo.
Dit ben ik niet helemaal met je eens; tot op zekere hoogte moet je dit idd vasthouden. Echter, flexibiliteit heeft z'n grenzen, imho.

Om een quote van geloof ik Einstein te misbruiken:
Keep things as simple as possible. Not any simpler

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • BCC
  • Registratie: Juli 2000
  • Laatst online: 08:26

BCC

Spider.007 schreef op 05 januari 2004 @ 21:41:
Hmm; aangezien mijn stijl (:P) nog niet voorbij is gekomen hier een voorbeeldje:
code:
1
2
if (varName == 3) someFunction();
else otherFunction();


Weg met overbodige regels! dat kost alleen maar kostbare bytes in je programmeercode
Haha.. zeker nooit van Assembly en Bytecode gehoord wel :)?
Lang leve vertalerbouw :X

[ Voor 5% gewijzigd door BCC op 05-01-2004 21:48 ]

Na betaling van een licentievergoeding van €1.000 verkrijgen bedrijven het recht om deze post te gebruiken voor het trainen van artificiële intelligentiesystemen.


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 30-11 20:12
Grappig iedereen heeft het net ietjes anders :) Ik gebruik geen accolades wanneer er maar 1 statement volgt.

code:
1
2
3
4
5
if (i < 7) {
  varName = smallVar.substr(3, 2);
  i++;
} else
  varName = StartNext(varName, i);

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 30-11 15:10

Creepy

Tactical Espionage Splatterer

Glimi schreef op 05 januari 2004 @ 21:44:
[...]

offtopic:
In PHP zeg maar....
Raad de uitkomst van
PHP:
1
echo "30 appels" * 40

:)

Ik zet zelf elke begin of eind van een block op een eigen regel
code:
1
2
3
4
5
if (iets == 30) then
{
  // blaat
  // meer blaat
}

dat idee dus..

ook laat ik een lege regel vallen VOOR elke if

code:
1
2
3
4
5
eenFunctie();
nogMeerOnzin();

if (iets) then
  doeIets();

en geen extra zooi als er maar 1 statement staat in een if..

[/slechte_verhul_actie_voor_een_stukje_php]

Het blijft naar mijn idee persoonlijk wat het meest leesbaar is. Ik ontwikkel redelijk wat in Delphi, en hierbij probeer ik zoveel mogelijk de Borland stijl aan te houden.

[ Voor 14% gewijzigd door Creepy op 05-01-2004 21:50 ]

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


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
gorgi_19 schreef op 05 januari 2004 @ 21:47:
[...]

Dit ben ik niet helemaal met je eens; tot op zekere hoogte moet je dit idd vasthouden. Echter, flexibiliteit heeft z'n grenzen, imho.

Om een quote van geloof ik Einstein te misbruiken:

[...]
Dat ben ik idd met je eens. Ik heb ook niet gezegd dat je met alle mogelijke toekomstige veranderingen enzo moet gaan rekening houden, want dat is helemaal niet werkbaar, en zal er alleen maar toe leiden dat het project doodbloed (want het komt niet uit de analyse fase) == paralysis by analysis.

Ik bedoel maar, door bepaalde principes toe te passen, kan je al een redelijk flexibel design hebben.

https://fgheysels.github.io/


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 09:04

RayNbow

Kirika <3

Dan zal ik ook maar 'ns m'n coding style posten :)

Java:
1
2
3
4
5
6
7
8
if (expression1 == expression2) {
    statement1;
    statementN;
}
else {
    statementX;
    statementY;
}


Visual Basic:
1
2
3
4
5
6
7
8
' Ik kon het niet laten om wat VB code te typen :P
If Expression1 = Expression2 Then
    Statement1
    Statement2
Else
    Statement3
    Statement4
End If


De stijl die ik in Java gebruik heb ik waarschijnlijk overgenomen van wat (C/C++) boeken die ik ooit gelezen heb.

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • BCC
  • Registratie: Juli 2000
  • Laatst online: 08:26

BCC

Kunnen er niet wat echte voorbeelden komen ipv al die onduidelijke foo-bar dingen?

[ Voor 85% gewijzigd door BCC op 05-01-2004 22:07 ]

Na betaling van een licentievergoeding van €1.000 verkrijgen bedrijven het recht om deze post te gebruiken voor het trainen van artificiële intelligentiesystemen.


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

haha... hap hap hap allemaal. ;) Ik las deze quote:
Weg met overbodige regels! dat kost alleen maar kostbare bytes in je programmeercode
in een blad van 25 jaar geleden; toen elke byte je programma twee keer zo lang liet duren. Ik wilde hem jullie niet onthouden en dit was de perfect context :D

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Sybr_E-N schreef op 05 januari 2004 @ 21:48:
Grappig iedereen heeft het net ietjes anders :) Ik gebruik geen accolades wanneer er maar 1 statement volgt.

code:
1
2
3
4
5
if (i < 7) {
  varName = smallVar.substr(3, 2);
  i++;
} else
  varName = StartNext(varName, i);
Tja, ik ben van mening dat je best altijd haakjes gebruikt. Zo blijf je consistent, en als je else - tak plots 2 of meer regels moet bevatten ipv die ene regel, dan heb je ook minder kans op bugs. (Stel nl. dat je toch maar eens vergeet om die haakjes er dan rond te zetten.
Geen haakjes zetten kan ook verwarrend zijn:
code:
1
2
3
4
5
6
7
8
9
if( i < 7 )
{
     varname = "blaat";
     i++;
}
else
    if( i == 10 )
        DoSomething();
     DoSomething2();

https://fgheysels.github.io/


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Spider.007 schreef op 05 januari 2004 @ 21:52:
haha... hap hap hap allemaal. ;) Ik las deze quote:
[...]
in een blad van 25 jaar geleden; toen elke byte je programma twee keer zo lang liet duren. Ik wilde hem jullie niet onthouden en dit was de perfect context :D
Haakjes , commentaar, whitespace, etc..... hebben helemaal geen invloed op het aantal bytes dat je executable groot wordt.
Het gaat 'm om 'compiled' codelijnen.

https://fgheysels.github.io/


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 30-11 15:10

Creepy

Tactical Espionage Splatterer

whoami schreef op 05 januari 2004 @ 21:52:
[...]


Tja, ik ben van mening dat je best altijd haakjes gebruikt. Zo blijf je consistent, en als je else - tak plots 2 of meer regels moet bevatten ipv die ene regel, dan heb je ook minder kans op bugs. (Stel nl. dat je toch maar eens vergeet om die haakjes er dan rond te zetten.
Geen haakjes zetten kan ook verwarrend zijn:
Een kwestie van op de juiste manier blijven inspringen lijkt me (daar is "consistentie" weer :P )
code:
1
2
3
4
5
6
7
8
9
if( i < 7 )
{
     varname = "blaat";
     i++;
}
else
    if( i == 10 )
        DoSomething();
DoSomething2();

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


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

MODBREAK


meukee, het begint zo langzamerhand een opsomtopic te worden waarin iedereen fijn even komt posten hoe hij programmeert, en niet in gaat op argumenten van anderen.

Als deze trend zich doorzet zal ik toch geneigd zijn om 'm op slot te gooien, puur om het feit dat de topic gewoonweg geen bestaandsrecht heeft in de huidige vorm.

Discussieer dus, kom met argumenten, ga in op argumenten van anderen, maar kom niet alleen maar even je gezicht en je codestyle laten zien

Reacties die hier vanaf nu niet aan voldoen zal ik de verdoemenis in helpen :P

EINDE MODBREAK

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.


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Creepy schreef op 05 januari 2004 @ 21:54:
[...]

Een kwestie van op de juiste manier blijven inspringen lijkt me (daar is "consistentie" weer :P )
code:
1
2
3
4
5
6
7
8
9
if( i < 7 )
{
     varname = "blaat";
     i++;
}
else
    if( i == 10 )
        DoSomething();
DoSomething2();
Inderdaad, inspringen is ook heel belangrijk, maar het moet maar eens niet gebeuren om heel verwarrende code te verkrijgen.

https://fgheysels.github.io/


Verwijderd

_/-\o_

Daar geef je dus precies weer wat mijn afkeer tegen het niet gebruiken van accolades is. :)
Creepy schreef op 05 januari 2004 @ 21:54:
[...]

Een kwestie van op de juiste manier blijven inspringen lijkt me (daar is "consistentie" weer :P )
code:
1
2
3
4
5
6
7
8
9
if( i < 7 )
{
     varname = "blaat";
     i++;
}
else
    if( i == 10 )
        DoSomething();
DoSomething2();
True, maar toch is een accolade i.m.o. duidelijker dan alleen het inspringen.
Om nog maar niet te spreken over het feit dat je ze alsnog moet gaan plaatsen als je meerdere statements wilt gaan gebruiken als aan de conditie voldaan wordt.

[ Voor 14% gewijzigd door Verwijderd op 05-01-2004 22:00 ]


  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 23-07 18:19
valt verder weinig over te discussieren nog denk ik, iedereen heeft al gezegd dattie op zijn eigen manier codert (of prutst O-)) ....

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:41

gorgi_19

Kruimeltjes zijn weer op :9

@whoami

En hier krijg je weer een stukje meningsverschil over wat netjes is.. :P
Ik zou met die code heel snel de draad kwijt zijn, ondanks het inspringen, waar ik eigenlijk ben gebleven. In dat opzicht vind ik de VB syntax een stuk duidelijker, waarin aangegeven wordt wanneer iets eindigt :P

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
If  i < 7 Then

     varname = "blaat";
     i = i + 1

Else

    If i = 10 Then

        DoSomething()

    End if

    DoSomething2()

End if

Sterker nog, je MAG het afaik niet eens doen zonder end if-statements zonder op een volgende regel te gaan

Visual Basic .NET:
1
If a = 1 then doactie()

mag dan weer wel, als enige uitzondering.

[ Voor 19% gewijzigd door gorgi_19 op 05-01-2004 22:02 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • BCC
  • Registratie: Juli 2000
  • Laatst online: 08:26

BCC

SWINX schreef op 05 januari 2004 @ 21:59:
valt verder weinig over te discussieren nog denk ik, iedereen heeft al gezegd dattie op zijn eigen manier codert (of prutst O-)) ....
Juist..en dat de meeste prutsers niet tot inkeer te brengen zijn :)

Na betaling van een licentievergoeding van €1.000 verkrijgen bedrijven het recht om deze post te gebruiken voor het trainen van artificiële intelligentiesystemen.


Verwijderd

gorgi_19 schreef op 05 januari 2004 @ 22:00:
@whoami

En hier krijg je weer een stukje meningsverschil over wat netjes is.. :P
Ik zou met die code heel snel de draad kwijt zijn, ondanks het inspringen, waar ik eigenlijk ben gebleven. In dat opzicht vind ik de VB syntax een stuk duidelijker, waarin aangegeven wordt wanneer iets eindigt :P
Euhm, heb ik het nou mis of gaf whoami nou juist een voorbeeld van wat hij niet netjes vindt?

Hij zegt juist dat er wel accolades gebruikt moeten worden. Dat maakt verder ook geen verschil met het VB voorbeeld dat je geeft. Enige verschil is dat je daar dus ziet wat er precies afgesloten wordt.
Als een taal dat echter niet ondersteunt en het gaat om grote code blokken dan is het gebruik van commentaar bij het afsluiten van zo'n blok een goed alternatief :)

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
gorgi_19 schreef op 05 januari 2004 @ 22:00:
@whoami

En hier krijg je weer een stukje meningsverschil over wat netjes is.. :P
Dat wou ik net aantonen.
Ik zou met die code heel snel de draad kwijt zijn, ondanks het inspringen, waar ik eigenlijk ben gebleven. In dat opzicht vind ik de VB syntax een stuk duidelijker, waarin aangegeven wordt wanneer iets eindigt :P
Inderdaad, dus dat was een argument van mij om altijd { } te gebruiken ( in C - syntax talen dus).
In VB.NET ben je dus blijkbaar verplicht om altijd aan te geven waar je block eindigt. VB.NET heeft dan toch nog een goed punt. ;) :+

Zelf geef ik in C# (en ook in andere talen) altijd aan waar m'n blocks beginnen/eindigen. Ik gebruik dus ook altijd die haakjes (icm een consistente indentatie).
Visual Basic .NET:
1
If a = 1 then doactie()

mag dan weer wel, als enige uitzondering.
Dat doe ik dus [meestal] niet. :P

https://fgheysels.github.io/


  • BCC
  • Registratie: Juli 2000
  • Laatst online: 08:26

BCC

whoami schreef op 05 januari 2004 @ 22:05:
[...]

Dat doe ik dus [meestal] niet. :P
Waarom zit die inconsequentie eigenlijk in VB6? Is dat nog vanwege de (Q)Basic backwards compatibiliteit?

Na betaling van een licentievergoeding van €1.000 verkrijgen bedrijven het recht om deze post te gebruiken voor het trainen van artificiële intelligentiesystemen.


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 09:41

gorgi_19

Kruimeltjes zijn weer op :9

whoami schreef op 05 januari 2004 @ 22:05:
Dat doe ik dus [meestal] niet.
Ik ook bijna nooit. Er is maar 1 uitzondering waarbij ik het gebruik.

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
    Private Function GetInfluenceOnEmptynessByPrice() As Double

        Dim __rent As Double = Me.CurrentRentAsPercentOfMaximumReasonableRent
        If IsBetween(__rent, Double.MinValue, 0.1) Then Return 10
        If IsBetween(__rent, 1.8, Double.MaxValue) Then Return 1
        If IsBetween(__rent, 0.1, 0.2) Then Return -25 * __rent + 26
        If IsBetween(__rent, 0.2, 0.4) Then Return (-40 / 3) * __rent + 7
        If IsBetween(__rent, 0.5, 1.8) Then Return -30 * __rent + 55

    End Function

In dit soort statements vind ik het veel duidelijker om het op 1 regel te houden dan om een eindeloze if-else-end if statements te gaan bouwen.

Heb ik een vaste leidraad ervoor? Neuh, dat niet; meer een kwestie van 'gevoel', om het maar heel vaag uit te drukken.. :)

[ Voor 17% gewijzigd door gorgi_19 op 05-01-2004 22:12 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

hmm wie heeft er zin om na al dit geblaat een mooie samenvatting te maken? >:)

ik ga mijn stijl denk ik toch maar ietsje veranderen

bedankt voor opmerking nelske, ik ga erop letten :)

[ Voor 3% gewijzigd door Wolfboy op 05-01-2004 22:18 ]

Blog [Stackoverflow] [LinkedIn]


Verwijderd

Wolfboy schreef op 05 januari 2004 @ 22:18:
hmm wie heeft er zin om na al dit geblaat een mooie samenvatting te maken? >:)
Ikke :+

http://www.google.com/sea...+style&btnG=Google+Search ;)
ik ga mijn stijl denk ik toch maar ietsje veranderen

bedankt voor opmerking nelske, ik ga erop letten :)
Je hoeft van mij niks te veranderen hoor, ik gaf alleen aan wat mij opviel als zijnde een klein beetje inconsistent. Als dat het enige is, dan is er niks aan de hand ;)

  • Vaudtje
  • Registratie: April 2002
  • Niet online
Voor Java heeft Sun zelf een aantal handreikingen over code style en code conventions.
(Sowieso staan er in de Java Language Specification al handreikingen mbt source layout)
Wat ik zo snel kon vinden is bijvoorbeeld degene waar ikzelf altijd mee werk, en kennelijk Sun zelf ook:
http://java.sun.com/docs/codeconv/

En ik vond deze ook nog, die is behoorlijk uitgebreid en bespreekt ook bijvoorbeeld naamgeving conventies voor jars e.d. :
http://wwws.sun.com/softw...hitepapers/java-style.pdf

En er zijn natuurlijk ook nog de Javadoc standaarden voor documentatie in de source, die weer zijn eigen style guide kent. Sommige IDE's ondersteunen zelfs syntax checking en code completion in Javadoc (i.i.g. IntelliJ IDEA):
http://java.sun.com/j2se/...ingdoccomments/index.html

En nog iets: In welke taal schrijft iedereen zijn code en commentaar?
(Op GoT zeg je er dan bij waarom ;) )
Als ik in het Nederlands bezig ben dan krijg ik dat meestal toch niet consequent, omdat je ook weer objecten gebruikt uit de standaard libraries, die weer in het Engels zijn. Voor OSS in Engels natuurlijk de de facto standaard, maar ik heb mezelf al wel eens betrapt op zinnen die onderweg echt drie keer wisselden tussen NL en EN :o

[ Voor 23% gewijzigd door Vaudtje op 05-01-2004 23:14 . Reden: en nog iets... ]

In deeze zin staan drie fauten


  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
mmm, ik denk dat het ongeacht of je in een projectgroep werkt belangrijk is om je code zo in elkaar te zetten dat een persoon die in de toekomst onderhoud doet aan je code begrijpt waar je mee bezig bent geweest, dat betekend dus regelmatig comments geven en duidelijke namen geven aan je variabelen / constanten...

verder is het natuurlijk gewoon een kwestie van smaak en in de grote bose wereld van microsoft en de rest wordt er afaik toch niet met echt 'grote' standaarden of conventies gewerkt, dus is er ook geen noodzaak om je aan bepaalde regels te houden

de vergelijking tussen programmeren en je eigen handschrift is op zich wel grappig, ik heb eens ergens gelezen dat je iq omgekeerd evenredig is met hoe 'net' je schrijft, dus dat zou slecht nieuws moeten zijn voor alle devvers met een hoog iq ;)

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Ik las vanavond dat oude topic nog eens terug, en frappant genoeg ben ik van een aantal dingen toch terug gekomen. Vroeger gebruikte ik altijd
code:
1
2
3
4
5
6
7
8
9
10
11
12
if ( a ) 
{

}
else if ( b ) 
{

}
else
{
 
}


Gek genoeg ben ik daar vanaf gestapt. Ik weet niet precies waarom... Waarschijnlijk omdat ik het toch niet erg logisch vindt allerlei enters te zetten waar ze eigenlijk niet zo erg veel toevoegen. Een stukje java code van hoe ik (tegenwoordig) gewend ben te coden:
offtopic:
het eerste het beste wat ik tegenkwam :P

Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package x.y.z;

import java.util.*;

public class ShuffleTest {
   private List list;

   public ShuffleTest () {
      list = new ArrayList ();
   }

   public void go () {
      for ( int i = 0; i < 10; i ++ ) {
         list.add ( new Integer (i) );
      }
      Collections.shuffle ( list, new Random () );

      Iterator iterator = list.listIterator ();
      while ( iterator.hasNext () ) {
         System.out.println ( iterator.next () );
      }
   }

   public static void main ( String args[] ) {
      ShuffleTest app = new ShuffleTest ();
      app.go ();
   }
}
Dat is gewoon een kwestie van smaak denk ik.

Waar ik wellicht nog wel wat zinnigs over kan zeggen is PHP.

Wat ik tegenwoordig doe (tipje van Cheatah, ere wie ere toekomt O-)) met SQL is het in aparte bestanden zetten. Vervolgens met een soort printf-achtige toestand je queries op een wat primitieve manier parametrizeren. Met een db-wrappertje daarbij scheelt dat een hoop meuk in je code.

Voorbeeldje:
PHP:
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
<?
include ( './inc/inc.stdlib.php' );
include ( './inc/inc.locale.php' );

import ( 'MySQL' );

$db = new MySQL ();
$db->connect (  'server', 'user', 'password', 'dbname' );

if ( isset ( $_GET [ 'page_id' ] ) && is_numeric ( $_GET [ 'page_id' ] ) ) {
   $page = $db->select ( 
      'page/select.by-id', 
      $current_locale_id, 
      (int) $_GET [ 'page_id' ] 
   );
} else {
   $page = false;
}

if ( ! $page ) {
   $page = $db->select ( 'page/select.default' );
}

$nav = $db->selectAll ( 'page/select.nav', $current_locale_id );
$sub_nav = $db->selectAll ( 
   'page/select.children', 
   $current_locale_id, 
   $page [ 'page_id' ] 
);

include ( sprintf ( './template/inc.%s.php', $page [ 'template_core' ] );


Zo'n sql bestandje wordt natuurlijk uit de sql directory gehaald waar je niet in kan browsen ( .htaccess'je met deny from all) en ziet er ongeveer zo uit:
SQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SELECT
   page$locale.title,
   page$locale.contents,
   DATE_FORMAT('%%d-%%m-%%Y',page.date_created) as date_created,
   template.core as template_core
FROM
   page 
      INNER JOIN page$locale ON(
          page$locale.locale_id=%1$d
          AND
          page.page_id=page$locale.locale_id
      )
      INNER JOIN template ON(
          page.template_id=template.template_id
      )
WHERE
   page.page_id=%2$d
AND
   page.is_visible='true'
offtopic:
Dit is overigens alweer wat verouderd, want ik ben net toevallig met een wat betere versie begonnen


Ik denk dat dat is wat bij PHP'ers nog veel mist. Gewoon redelijk transparante code gebruiken, en niet elke keer maar weer die mysql_* functies tussen je code door, en weer die queries in een string in je code, je pas met HTML bemoeien als dat interessant is, etcetera, etcetera...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
drm schreef op 05 januari 2004 @ 23:16:
Ik denk dat dat is wat bij PHP'ers nog veel mist. Gewoon redelijk transparante code gebruiken, en niet elke keer maar weer die mysql_* functies tussen je code door, en weer die queries in een string in je code, je pas met HTML bemoeien als dat interessant is, etcetera, etcetera...
Ik denk dat de meeste webscripters naast het verzorgen van 'nette' code ook wel eens mogen kijken naar op de juiste manier toepassen van html. Kom heel vaak sites en trouwens ook topics tegen waarbij dat echt slecht is (en dan te bedenken dat er in /13 een hoop mensen zijn die heel goed kunnen vertellen hoe het moet :Y) )

[ Voor 3% gewijzigd door faabman op 05-01-2004 23:25 ]

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • zoepercavia
  • Registratie: September 2001
  • Laatst online: 02-11 22:01
Voor C#:

http://www.idesign.net/id...p%20Coding%20Standard.zip - vrij bekende coding standard voor c#, gebaseerd op Microsoft's standaarden.

http://www.tiobe.com/standards/gemrcsharpcs.pdf - C# guidelines van Philips, errug uitgebreid. Staan ook standaard manieren in om dingen op te lossen. Neemt Microsoft's standaard over en breidt em uit.

Panacea.NL als je geinteresserd bent in IT en Geneeskunde!


  • ripexx
  • Registratie: Juli 2002
  • Laatst online: 23:19

ripexx

bibs

Om even te reageren op wat drm hierboven schrijft. Ik code nu ook op de manier waarop drm begonnen is. Voordeel hiervan is dat als je met name een beginnende php-prutser bent :X Je dan toch een duidelijk overzicht hebt. Vooral met debuggen is het een stuk handiger.

Verder heb ik nog al de neiging om veel HTML direct in mijn scripts te gebruiken. Dit komt deels omdat het hobby is en maar op kleine schaal wordt gebruikt. Eigenlijk is het gewoon luiheid. :o Verder vind ik die scheiding van SQL en PHP zeker een goede zet. Metname de grotere queries maken het een stuk onoverzichtelijker.

Als ik mijn ranzig constructie van toen vergelijk met nu dan is het als stuk beter. Je leert iig veel door boeken te lezen en code van andere te bekijken. :)

buit is binnen sukkel


Verwijderd

Ik doe het op deze manier:

code:
1
2
3
4
5
if($i < 10) {
    doe iets.....
} else {
    doe iets anders
}


Het argument waarom ik dit doe?
Het is niet dat dit netter of beter is dan andere stijlen. De reden waarom ik dit doe is om mijn bestanden zo klein mogelijk te houden.
Zet dit voorbeeld 10x in een tekstbestand en je hebt een bestand van 696 bytes.
Zet dit:

code:
1
2
3
4
5
6
7
8
if($i < 10)
{
    doe iets.....
}
else 
{
    doe iets anders
}


10x in een tekstbestand en je krijgt ineens een bestand van 736 bytes.
Je zou zeggen, dat scheelt toch niets maar denk eens aan projecten waar je ,op mijn manier, meer dan 200.000 regels code hebt (en die zijn er genoeg).
De verschillen worden dan toch behoorlijk groot.

Dit is eigenlijk de reden waarom ik voor deze stijl heb gekozen EN om eerlijk te zijn, ik vind het de meest prettige manier. Inspringen is wel zeeeer belangrijk.

// toevoeging:
Nog 2 dingen die ik erg belangrijk vind in goede overzichtelijke code,
- duidelijk commentaar
- scheiden van (in PHP) code en HTML, oftewel een template systeem gebruiken. Code in de HTML probeer ik zo veel mogelijk tot het minimum te beperken.

[ Voor 14% gewijzigd door Verwijderd op 06-01-2004 09:40 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Verwijderd schreef op 06 januari 2004 @ 09:35:

10x in een tekstbestand en je krijgt ineens een bestand van 736 bytes.
Je zou zeggen, dat scheelt toch niets maar denk eens aan projecten waar je ,op mijn manier, meer dan 200.000 regels code hebt (en die zijn er genoeg).
De verschillen worden dan toch behoorlijk groot.
Ik vind dat maar een wazig argument hoor.
Dit:
code:
1
{

is geen regel code.

De grootte van je source-files maakt trouwens niet uit.

https://fgheysels.github.io/


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Ik vind de grote in bytes niet echt boeiend als het gaat om source code, ik bedoel, met de huidige hd's en netwerken (en compressie tools) maakt het dus niet echt uit.
Wel vind ik het handiger source lezen als er minder van deze (in mijn ogen) nutteloze whitespace inzit. Voor en na sommige if-statements, met name als ze wat langer zijn, doe ik wel een lege regel, om de leesbaarheid te vergroten, net zo belangrijk als indenting imo.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

whoami:
De grootte van je source-files maakt trouwens niet uit.
Op een windows-systeem is elke newline toch gauw 2 bytes, afgezien van het feit dat het imo ook een non-argument is. Tenzij je bedoelt dat je je anders helemaal het leplazarus moet scrollen :P

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 08:56

Janoz

Moderator Devschuur®

!litemod

@TheLightwaver
Ik weet niet waar je mee bezig bent, maar door in je bovenstaande code enkele spaties te vervangen in een newline krijg je onderstaande code. Er is dan geen enkel teken toegevoegd! (Tenzij je natuurlijk op windows werkt waar een newline uit 2 bytes bestaat, maar aangezien je met 200.000 regels code werkt en voor jou blijkbaar elke byte telt kan het gewoon niet anders dan dat je onder linux werkt ;) )

ff serieus: Diskruimte is zo'n non argument. Tegenwoordig krijg je een 40 gieg schijf (als ze uberhaupt nog worden gemaakt) bij een zak wortels. Om40 gieg te besparen door dit soort truckjes in je code toe t passen ben je nog wel even bezig. Verder vraag ik me af wat er, waneer dit soort besparingen blijkbaar nodig zijn, met het commentaar gebeurt.

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


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 08:56

Janoz

Moderator Devschuur®

!litemod

Hier op het werk zitten we na te denken over een tool waarvan ik de naam even ontschoten (iets met een J). Hiermee kun je code formatten in een afgesproken codestyle. Op die manier kan iedereen zijn eigen code style blijven gebruiken. Zodra een stuk source wordt uitgechecked (uit cvs oid) kan de stijl worden aangepast aan de programmeur die er dan mee werkt, en bij het inchecken wordt het weer omgezet naar de algemene codestyle.

Ik heb echter geen ID of het een beetje fatsoenlijk werkt ;). Op dit moment zijn er alleen nog vage plannen..

edit: Naam is trouwens jacobe.

[ Voor 8% gewijzigd door Janoz op 06-01-2004 09:58 ]

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


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
drm schreef op 06 januari 2004 @ 09:51:
[...]
Op een windows-systeem is elke newline toch gauw 2 bytes, afgezien van het feit dat het imo ook een non-argument is. Tenzij je bedoelt dat je je anders helemaal het leplazarus moet scrollen :P
Regions gebruiken. ;)

https://fgheysels.github.io/


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 30-11 15:10

Creepy

Tactical Espionage Splatterer

Onder Linux/Unix gebruikte ik hier indent voor. Ideaal voor schoolprojecten. In je eigen stijl je code inkloppen, indent er overheen met de juiste opties en ineens heeft de code een compleet andere stijl. Indent werkte toen volgens mij alleen met C, en waarschijnlijk ook C++. Geen idee of het nu ook andere talen ondersteunt.

Edit: Ah, jacobe is alleen voor java dus.

[ Voor 7% gewijzigd door Creepy op 06-01-2004 10:04 ]

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


Verwijderd

Ik heb alleen het argument gegeven waarom ik toendertijd ben overgestapt op deze manier. Komt eigenlijk vanuit de periode dat ik begon met C.

Dat schijven tegenwoordig super groot zijn weet ik. Ik hou gewoon mijn bestanden het liefst zo klein mogelijk. Dit heb ik weer vanuit het grafische werk overgenomen. jpg's, gifs etc hou je ook zo klein mogelijk dus waarom de bestanden met code niet?
Misschien een wazig argument maar er werd gevraagd hoe en waarom we een bepaalde stijl hebben.

Of dit de beste manier is weet ik niet, maar daarom heb ik hier toen voor gekozen.
Op den duur een kwestie van gewoonte, niets anders.

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Verwijderd schreef op 06 januari 2004 @ 10:05:
Dat schijven tegenwoordig super groot zijn weet ik. Ik hou gewoon mijn bestanden het liefst zo klein mogelijk. Dit heb ik weer vanuit het grafische werk overgenomen. jpg's, gifs etc hou je ook zo klein mogelijk dus waarom de bestanden met code niet?
Misschien een wazig argument maar er werd gevraagd hoe en waarom we een bepaalde stijl hebben.
Maar, jpg's en gifs enzo zijn _output_ files, ik neem aan dat het origineel dat je in photoshop ofzo maakt ook niet echt klein is ;)
Zelf zou ik dan de gecompileerde versie klein willen hebben ;)

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 28-11 08:35

curry684

left part of the evil twins

Janoz schreef op 06 januari 2004 @ 09:56:
Hier op het werk zitten we na te denken over een tool waarvan ik de naam even ontschoten (iets met een J). Hiermee kun je code formatten in een afgesproken codestyle. Op die manier kan iedereen zijn eigen code style blijven gebruiken. Zodra een stuk source wordt uitgechecked (uit cvs oid) kan de stijl worden aangepast aan de programmeur die er dan mee werkt, en bij het inchecken wordt het weer omgezet naar de algemene codestyle.

Ik heb echter geen ID of het een beetje fatsoenlijk werkt ;). Op dit moment zijn er alleen nog vage plannen..

edit: Naam is trouwens jacobe.
Fascinerend idee.... eens kijken of ik daar op termijn iets mee kan voor C/C++ :)

* curry684 was toch al van plan binnenkort een C/C++ parsertje te schrijven voor iets andere doeleinden.

Professionele website nodig?


  • Michali
  • Registratie: Juli 2002
  • Laatst online: 05-11 19:33
Ik heb een voorkeur voor een hele 'luchtige' stijl van programmeren. Veel spaties en enters. Na het afsluiten van een block bijvoorbeeld heb ik altijd een lege regel (behalve bij een if-else constructie).

Ik heb verder niet zo veel problemen met meerdere dingen op een regel, als die maar allen te hetzelfde statement behoren dus niet met ; oid. ertussen en dan er nog wat achter aan zetten. Sommige mensen proberen zo'n statement op te splitsen in meerder losse acties, waarvoor dan wel meer lokale variabelen nodig zijn. Ik vind niet dat dit de code duidelijker maakt.

(maar het moet natuurlijk niet te gek worden, als er bijvoorbeeld meer dan 3-4 functie aanroepen in een statement komt, dan ga ik ook wel overwegen om het anders te doen)

Noushka's Magnificent Dream | Unity


Verwijderd

Topicstarter
Hier op het werk zitten we na te denken over een tool waarvan ik de naam even ontschoten (iets met een J). Hiermee kun je code formatten in een afgesproken codestyle. Op die manier kan iedereen zijn eigen code style blijven gebruiken. Zodra een stuk source wordt uitgechecked (uit cvs oid) kan de stijl worden aangepast aan de programmeur die er dan mee werkt, en bij het inchecken wordt het weer omgezet naar de algemene codestyle.

Ik heb echter geen ID of het een beetje fatsoenlijk werkt . Op dit moment zijn er alleen nog vage plannen..

edit: Naam is trouwens jacobe.
Of misschien zou het Zend team hiermee aan de gang kunnen gaan, dat zou nm. wel een mooie optie zijn voor de nieuwe Zend Studio...

[ Voor 62% gewijzigd door Verwijderd op 06-01-2004 12:13 ]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd schreef op 06 januari 2004 @ 09:35:
Je zou zeggen, dat scheelt toch niets maar denk eens aan projecten waar je ,op mijn manier, meer dan 200.000 regels code hebt (en die zijn er genoeg).
De verschillen worden dan toch behoorlijk groot.
ik houd me even van den domme en ga een rekensommetje doen. Overigens vind ik een project met 200.000 regels heel erg groot, ik vraag me af hoeveel daarvan in de werkelijkheid voorkomen

Goed, ik pak even jouw voorbeeld.
De korte versie was 696 bytes, en de lange versie 736. Dat is een verschil van 40 bytes, en aangezien je het 10x deed betekent dat 4 bytes per complete if-else-statement van 5 regels

Goed, die 5 regels expanderen we naar 200.000, dus dat wordt 40.000 keer zoveel. 40.000 * 4 bytes = 160.000 bytes.

OMFG!!! 160k op 200.000 regels code!! Dat is toch wel een hele single sided, single density 5.25" floppy!!! Stel je voor dat je die net te kort komt, echt te erg gewoon!!!!!!!!111


En dan heb ik het commentaar nog niet eens meegenomen, dit is gewoon 200.000 regels aan if-else-statements. Het wordt dus sowieso een stuk minder omdat je code niet alleen uit accolades bestaat, maar ook gewoon uit statements die je gewoon recht onder elkaar zet. Neem daarbij dat iets van 50-80% van de grootte van je source uit comments bestaat (comments zijn volledige tekst, en nemen dus vaak veel meer ruimte in dan je code zelf). Het is dus 3x niks

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.


  • Delphi32
  • Registratie: Juli 2001
  • Laatst online: 00:08

Delphi32

Heading for the gates of Eden

.oisyn schreef op 06 januari 2004 @ 13:41:
Overigens vind ik een project met 200.000 regels heel erg groot, ik vraag me af hoeveel daarvan in de werkelijkheid voorkomen
Los van de juistheid van je opmerkingen over de onzin van die paar bytes: projecten van 200.000 regels en groter zijn toch echt dagelijks werk voor me hoor. Ik heb een stuk of 5 projecten tegelijk lopen die allemaal 200.000+ zijn; eentje zelfs met 1,235 miljoen regels (vorige week nog geteld).

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Paar overwegingen:

* als ik HTML schrijf (dus niet: PHP) ben ik nog steeds erg zuinig met newlines, tabs, etcetera. Elke byte is er dan 1 die verzonden moet worden, en verzenden kost geld. Als ik sommige HTML-sources bekijk, waar honderden regels onder elkaar tientallen tabs achter elkaar staan in documenten die duizenden keren per dag worden verzonden... Dat scheelt al snel megabytes. Niet doen dus. Wat dat betreft ben ik blij dat ik 20 jaar geleden heb leren programmeren, efficient gebruik van code is mij gelukkig nog niet volstrekt vreemd :)

* Accolades altijd onder elkaar (zie bijv. hieronder) en daar koop je, als serieuze programmeur, dus idd. minimaal een 19" bij die je dan ook op 1600x1200 instelt. Om de if in een else-if zet je trouwens ook accolades. Alleen single statements kunnen eventueel zonder; maar zelfs dan zet ik ze er voor de overzichtelijkheid vaak ff bij; altijd, bijvoorbeeld, als ik ook accolades bij het als-true-statement gebruik.

* de 'klassieke' manieren van identifiers schrijven (bijvoorbeeld eenVariabele vs. EenFunctie) levert mij hoofdbrekens op in OO-environments. Voorbeeld:
C#:
1
2
3
4
5
6
7
8
9
10
class Something
{
    private int _locaaltje;

    public int PubliekeProperty
    {
        get { return _locaaltje; }
        set { _locaaltje = value; }
    }
}
...is die property nou een functie? Ik vind (op basis van gevoel) van niet, in feite is 'ie het wel, maar geef je dat wel of geen begin-hoofdletter? En hoe doe je dat met events? Is dat een functie of een variabele? Of geen van beide?

Kortom, mijn hoofdlettergebruik is doorgaans volstrekt niet consistent :) Die underscore gebruik ik trouwens ook vaker niet dan wel.

* Ik las laatst dan in C het als standaard geldt om géén tabs te gebruiken, maar alles met spaties te layouten. Dat vind ik nou echt ruimteverspilling :) Ook hier: koop maar een groter beeldscherm, leer je editor eens hoe breed een tab moet zijn en hou op met zeuren :P

[ Voor 10% gewijzigd door Rataplan op 06-01-2004 14:26 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

Delphi32 schreef op 06 januari 2004 @ 14:21:
[...]

Los van de juistheid van je opmerkingen over de onzin van die paar bytes: projecten van 200.000 regels en groter zijn toch echt dagelijks werk voor me hoor. Ik heb een stuk of 5 projecten tegelijk lopen die allemaal 200.000+ zijn; eentje zelfs met 1,235 miljoen regels (vorige week nog geteld).
ah ok, dan heb ik me daarin vergist :)
Ik heb zelf ook niet zo'n ervaring met die supergrote projecten, vandaar

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.


  • riezebosch
  • Registratie: Oktober 2001
  • Laatst online: 31-10 11:58
als je een modbreak doe, doe 'm dan iig foutloos ;)

Canon EOS 400D + 18-55mm F3.5-5.6 + 50mm F1.8 II + 24-105 F4L + 430EX Speedlite + Crumpler Pretty Boy Back Pack


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

riezebosch:
als je een modbreak doe, doe 'm dan iig foutloos ;)
Als je dan een reply doet, voeg dan in ieder geval iets toe aan het topic :/

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
* als ik HTML schrijf (dus niet: PHP) ben ik nog steeds erg zuinig met newlines, tabs, etcetera. Elke byte is er dan 1 die verzonden moet worden, en verzenden kost geld. ... documenten die duizenden keren per dag worden verzonden... Dat scheelt al snel megabytes.
Daar ben ik het niet mee eens. Je moet dit soort dingen relatief zien. Vergeleken met de hoeveelheid data, stelt dat helemaal niets voor. Het wordt pas interessant als je tientallen procenten bandbreedte kunt gaan besparen. Die paar bytes van jouw vallen in het niet bij een aantal plaatjes, bijv. Bovendien verlies je zo wie zo al een heleboel ruimte door de voor mensen leesbare HTML-tags. En is er per default geen sprake van compressie.
* Ik las laatst dan in C het als standaard geldt om géén tabs te gebruiken, maar alles met spaties te layouten. Dat vind ik nou echt ruimteverspilling :) Ook hier: koop maar een groter beeldscherm, leer je editor eens hoe breed een tab moet zijn en hou op met zeuren :P
[/quote]

Er zijn programmeertalen die afhankelijk van layout zijn. Het gebruik van tabs kan in deze gevallen tot vreemde situaties leiden.

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 30-11 20:12
Rataplan schreef op 06 januari 2004 @ 14:23:
Paar overwegingen:

* Accolades altijd onder elkaar (zie bijv. hieronder) en daar koop je, als serieuze programmeur, dus idd. minimaal een 19" bij die je dan ook op 1600x1200 instelt.
Is dat niet een erg kromme gedachte? Dus als jouw compiler niet fatsoenlijk optimaliseerd koop jij een sneller pc om op die manier als nog een goed resultaat te behalen?

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Sybr_E-N:
Is dat niet een erg kromme gedachte? Dus als jouw compiler niet fatsoenlijk optimaliseerd koop jij een sneller pc om op die manier als nog een goed resultaat te behalen?
:? :? 7(8)7 volgens mij lees jij niet helemaal goed ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Ik praat even over Java, daar programmeer ik het meest mee en daar is opmaak voor mij ook het belangrijkst.

Ik zet de accolade er het liefst achter en niet onder. Ik vind er achter namelijk overzichtelijker. Ik zie direct als er een inspringing is dat daar een groep statements komen van één of andere methode.
Zet ik de accolade eronder, zie ik door al die witregels de tabs niet meer en loop ik veel langer te zoeken. Wellicht dat andere juist niet zo letten op tabs, maar juist op accolades, dan kan ik me voorstellen dat je hem er onder zet.

Verder vind ik het nogal knullig staan als de if maar één statement bevat en dat die toch tussen accolades is gezet. Met accolades geef je immers aan dat je if-statement meerdere statements gaat bevatten. Is dat er maar eentje, hoef je ook geen accolades te typen.
Je krijgt dan ook stiekem een beetje het vermoede dat de programmeur niet weet dat je dan geen accolades hoeft te typen. Wellicht dus een amateurist.

Je ziet dan ook al ontstaan dat je dus meer tabgeoriënteerd moet gaan kijken en niet accoladegeoriënteerd. Wat dat betreft is het misschien juist beter om de accolade er achter te zetten en niet er onder.

Tot slot ben ik het ook wel eens met wat ik hier eerder las. Een regel hoort eigenlijk ook iets te zijn. Een accolade op een losse regel is niets, die hoort ergens bij. Dus erachter en niet eronder.

Op school verschilt het per leraar en de boeken zijn niet consequenter.

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

drm schreef op 06 januari 2004 @ 19:23:
:? :? 7(8)7 volgens mij lees jij niet helemaal goed ;)
Zo volstrekt krom en uit z'n verband gerukt als het er staat: ik ben bang dat 'ie de vergelijking serieus bedoelt :D

Ik pas (in dit geval) namelijk inderdaad mijn hardware aan mijn gedrag aan. Dit in tegenstelling tot Sybr_e-n, die net zo lief op een 12cm zwartwit-buisje naar LOTR kijkt.

Neem ik dan aan 8)7

edit:
En wat Nelske hieronder schrijft wou ik ook net tikken, behalve dan dat ik ook nog wil weten wat een amateurist is :)

[ Voor 14% gewijzigd door Rataplan op 06-01-2004 19:48 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


Verwijderd

Verwijderd schreef op 06 januari 2004 @ 19:39:
Verder vind ik het nogal knullig staan als de if maar één statement bevat en dat die toch tussen accolades is gezet. Met accolades geef je immers aan dat je if-statement meerdere statements gaat bevatten. Is dat er maar eentje, hoef je ook geen accolades te typen.
Je krijgt dan ook stiekem een beetje het vermoede dat de programmeur niet weet dat je dan geen accolades hoeft te typen. Wellicht dus een amateurist.
De redenen om het juist wel te doen al gelezen in deze topic :?

Andersom vind ik eerder amateuristisch te noemen, omdat het minder consistent is; de kans op fouten groter is en de overzichtelijkheid er niet beter op wordt.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

edit:
/me sloom :z
The_Tzar:
Je krijgt dan ook stiekem een beetje het vermoede dat de programmeur niet weet dat je dan geen accolades hoeft te typen. Wellicht dus een amateurist.
Daar ben ik het dus helemaal niet mee eens. Dat ik het niet doe wil nog niet zeggen dat ik niet weet dat het ook zonder kan. Je bent inconsequent bezig als je niet altijd en overal accollades zet. Hoe minder "behalve"s en "tenzij"s er in een codestijl zitten, hoe beter imho.

[ Voor 3% gewijzigd door drm op 06-01-2004 19:46 ]

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Verwijderd schreef op 06 januari 2004 @ 19:39:

Verder vind ik het nogal knullig staan als de if maar één statement bevat en dat die toch tussen accolades is gezet. Met accolades geef je immers aan dat je if-statement meerdere statements gaat bevatten. Is dat er maar eentje, hoef je ook geen accolades te typen.
Je krijgt dan ook stiekem een beetje het vermoede dat de programmeur niet weet dat je dan geen accolades hoeft te typen. Wellicht dus een amateurist.
Ik heb hier al redenen aangegeven om die accolades juist wel altijd te zetten.
Trouwens, als iemand een andere programmeur als 'amateurist' inschat omwille van een deel van z'n coding - style, dan zegt dat imho toch veel over die programmeur.

https://fgheysels.github.io/


Verwijderd

drm schreef op 06 januari 2004 @ 19:45:
edit:
/me sloom :z



[...]
Daar ben ik het dus helemaal niet mee eens. Dat ik het niet doe wil nog niet zeggen dat ik niet weet dat het ook zonder kan. Je bent inconsequent bezig als je niet altijd en overal accollades zet. Hoe minder "behalve"s en "tenzij"s er in een codestijl zitten, hoe beter imho.
En dat is inderdaad ook een goed argument en ik persoonlijk zou je ook niet zo snel veroordelen hoor ;), maar ik wilde het wel even als argument aandragen, omdat er wel degelijk mensen zijn die het onprofessioneel vinden.
Een docent Java (één van de) vindt het bijvoorbeel echt achterlijk, geef je met je accolades aan dat je een groep statements gaat krijgen en dan zet je er maar één neer? Hij vindt het achterlijk en alles behalve professioneel overkomen. Dus ja, het zal je potentiële opdrachtgever maar zijn, terwijl als je het niet doet je hoog uit krijgt te horen dat ze liever hebben dat je consequenter blijft. Ze kunnen je iig niet een gebrek aan kennis verwijten.

edit:
Sorry als ik jullie eerdere argumenten niet heb gelezen, ik had het wel doorgelezen, maar de helft niet echt opgenomen, omdat ik tegerlijkertijd een oplossing bedacht voor iets anders :X

[ Voor 10% gewijzigd door Verwijderd op 06-01-2004 19:52 ]


Verwijderd

Ook nog iets waarbij je veel verschillende meningen ziet: inspringen met tabs of spaties? Zelf gebruik ik altijd liever tabs, maar in sommige coding guides zweren ze toch weer bij het zetten van drie spaties. Zijn er hier ook nog mensen die liever spaties gebruiken en daar een reden voor hebben?

Verwijderd

Verwijderd schreef op 06 januari 2004 @ 19:52:
Ook nog iets waarbij je veel verschillende meningen ziet: inspringen met tabs of spaties? Zelf gebruik ik altijd liever tabs, maar in sommige coding guides zweren ze toch weer bij het zetten van drie spaties. Zijn er hier ook nog mensen die liever spaties gebruiken en daar een reden voor hebben?
Bij mij op school lijken ze er in ieder geval unaniem over eens dat de tab op 2 spaties ingesteld moet worden en elk programma die dat default niet heeft moeten we onmiddelijk (de één is wat makkelijker dan de ander) instellen op 2 spaties. Mij persoonlijk lijkt 3 veel overzichtelijker, maarja, als zij 2 willen krijgen ze 2 :)

  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

Verwijderd schreef op 06 januari 2004 @ 19:52:
Ook nog iets waarbij je veel verschillende meningen ziet: inspringen met tabs of spaties? Zelf gebruik ik altijd liever tabs, maar in sommige coding guides zweren ze toch weer bij het zetten van drie spaties. Zijn er hier ook nog mensen die liever spaties gebruiken en daar een reden voor hebben?
Bij voorkeur tabs, zoals ik eerder schreef, als het moet een aantal spaties, dat om één of andere reden altijd even is. Drie? Brrr :{

edit:
@whoami: in mijn ervaring is het juist exact tegengesteld. Alles wat door docenten als waar wordt geponeerd is flauwekul of zal dat dra zijn. Zo werd mij in 1986 het woord 'flodderschijf' nog door de strot geramd als enige aan de RUL toegestane aanduiding voor 51/4 schijfjes. Well, we all know how long they lasted :)

[ Voor 25% gewijzigd door Rataplan op 06-01-2004 20:02 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Verwijderd schreef op 06 januari 2004 @ 19:51:
[...]

En dat is inderdaad ook een goed argument en ik persoonlijk zou je ook niet zo snel veroordelen hoor ;), maar ik wilde het wel even als argument aandragen, omdat er wel degelijk mensen zijn die het onprofessioneel vinden.
Een docent Java (één van de) vindt het bijvoorbeel echt achterlijk, geef je met je accolades aan dat je een groep statements gaat krijgen en dan zet je er maar één neer? Hij vindt het achterlijk en alles behalve professioneel overkomen. Dus ja, het zal je potentiële opdrachtgever maar zijn, terwijl als je het niet doet je hoog uit krijgt te horen dat ze liever hebben dat je consequenter blijft. Ze kunnen je iig niet een gebrek aan kennis verwijten.
Nouja, het is niet omdat hij docent is, dat zijn wil dan wet is, of zijn mening de enige juiste is.

https://fgheysels.github.io/


Verwijderd

Verwijderd schreef op 06 januari 2004 @ 19:51:
maar ik wilde het wel even als argument aandragen, omdat er wel degelijk mensen zijn die het onprofessioneel vinden.
Zoals whoami al zegt, zegt dat meer over de persoon die dat beoordeelt dan over de persoon van wie de code is. Als je uit een dergelijk klein stijl element een indruk opbouwt over de programmeur dan ben je verkeerd bezig.
Een docent Java (één van de) vindt het bijvoorbeel echt achterlijk, geef je met je accolades aan dat je een groep statements gaat krijgen en dan zet je er maar één neer? Hij vindt het achterlijk en alles behalve professioneel overkomen.
Gehehe :P Ik denk dat je voor de gein eens deze topic moet printen of hem deze url geven ;) Kijken wat de argumenten zijn om het achterwege te laten, buiten het argument dat je het achterwege kan laten in dergelijke gevallen.
Dus ja, het zal je potentiële opdrachtgever maar zijn, terwijl als je het niet doet je hoog uit krijgt te horen dat ze liever hebben dat je consequenter blijft. Ze kunnen je iig niet een gebrek aan kennis verwijten.
En jij denkt serieus dat een opdrachtgever over dergelijke kleine stijl dingen gaat vallen? Die kijken echt wel naar het grotere geheel hoor ;)
Daarnaast geldt in dat geval ook bovenstaande verhaal weer.

Verder heb je voldoende argumenten mocht men er wel over vallen. Argumenten om het wel te doen die i.m.o. beduidend sterker zijn dan eventuele argumenten om het niet te doen.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Rataplan:
Bij voorkeur tabs, zoals ik eerder schreef, als het moet een aantal spaties, dat om één of andere reden altijd even is. Drie? Brrr :{
Spaties. 3 spaties.
Waarom spaties? Omdat als ik toevallig even iets in notepad ofzo open ik ook gewoon goede layout wil krijgen en niet opeens alles versprongen is omdat de tabinstelling anders is |:( (geldt overigens voor meer programma's dan alleen maar notepad)

Waarom 3? Geen idee eigenlijk. 4 vind ik ook wel gaan, 2 vind ik echt te weinig.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd schreef op 06 januari 2004 @ 19:39:
Verder vind ik het nogal knullig staan als de if maar één statement bevat en dat die toch tussen accolades is gezet. Met accolades geef je immers aan dat je if-statement meerdere statements gaat bevatten. Is dat er maar eentje, hoef je ook geen accolades te typen.
Je krijgt dan ook stiekem een beetje het vermoede dat de programmeur niet weet dat je dan geen accolades hoeft te typen. Wellicht dus een amateurist.
bliep
C++:
1
2
3
4
5
6
7
8
#include <iostream>

int main (int argc, char ** argv)
{
    if (argc > 2)
        std::cout << "U heeft argumenten opgegeven" << std::endl;
        std::cout << "Beginnend met deze: " << argv[1] << std::endl;
}


Codestyle heeft niet alleen met leesbaarheid te maken, maar ook met het voorkomen van fouten. Bovenstaande code interpreteer je als zijnde 2 statements in het if-block. Toch wordt het niet zo geparsed. Nou gebruik ik ook geen accolades als ik ze niet nodig heb, maar er is wel wat voor te zeggen om het altijd te doen. Consistentie is al genoemd, de 2e reden is omdat je er makkelijker een regel bij kunt zetten als dat nodig is.

Een ander, minder helder voorbeeld, maar toch funest voor je programma:
C++:
1
2
3
4
5
6
7
8
void functie (int a, int b)
{
    if (a)
        if (b)
            std::cout << "a en b zijn true" << std::endl;
    else
        std::cout << "a is false" << std::endl;
}


ook hier, het expliciet gebruik van accolades voorkomt fouten


En argumenten om een accolade erachter of juist op de volgende regel te zetten zijn imho stuk voor stuk lulkoek. Het is puur en alleen een kwestie van persoonlijke voorkeur. Ik houd zelf van veel witregels, en ik deel mijn code in in alinea's. En met een resolutie als 1600x1200 kan ik me dat ook wel veroorloven, het ziet er gewoon veel helderder uit. Maar goed, dat is dus puur hoe ik erover denk, weinig keiharde feiten ;)

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

drm schreef op 06 januari 2004 @ 20:02:
[...]
Spaties. 3 spaties.
Waarom spaties? Omdat als ik toevallig even iets in notepad ofzo open ik ook gewoon goede layout wil krijgen en niet opeens alles versprongen is omdat de tabinstelling anders is |:( (geldt overigens voor meer programma's dan alleen maar notepad)
Yupz, ik (wij) gebruik(en) ook 3 spaties. Zeker als ik onder Linux werk is het altijd weer heerlijk om te zien, hoe andere mensen spaties en tabs door elkaar gemikt hebben om vervolgens alles te laten verspringen. Nu is dat erg makkelijk op te lossen door een retab (tabs worden omgezet in spaties), maar toch is het iets iritants wat je bij het gebruik van spaties gewoon simpelweg niet hebt. Dat ziet er bij iedereen, ongeacht OS of editor precies hetzelfde uit.

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
Gebruik een editor editor die de source-code parsed en automatisch de source-code aanbied d.m.v. een pretty printer met jouw layout-voorkeuren en bovendien aanpassingen in deze view doorvertaald naar de voorkeuren van de oorspronkelijke source-code. Als zo'n editor bestaat tenminste (waarom zou dat niet kunnen?).

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
.oisyn schreef op 06 januari 2004 @ 20:05:
[...]

Consistentie is al genoemd, de 2e reden is omdat je er makkelijker een regel bij kunt zetten als dat nodig is.
Die 2de reden was ook al genoemd hoor. :P
ook hier, het expliciet gebruik van accolades voorkomt fouten
Ook al genoemd. :P

Sorry for this interruption, please continue. :P :Y)

https://fgheysels.github.io/


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

whoami schreef op 06 januari 2004 @ 20:09:
Die 2de reden was ook al genoemd hoor. :P
waar dan? :+
Ook al genoemd. :P
waar dan? :+

[ Voor 3% gewijzigd door .oisyn op 06-01-2004 20:14 ]

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.


  • Mayco
  • Registratie: Augustus 2002
  • Laatst online: 23-11 14:42
ikzelf programeer op deze manier:

php:
code:
1
2
3
4
5
6
7
if ($var=="mayco") {
  DoeIets($var);
  echo "ok";
} else {
  DoeIetsAnders($var);
  echo "niet ok";
}


zo vind ik het het beste leesbaar, omdat je duidelijk het verschil tussen de 2 codeblokken ziet, het is compact, maar toch mooi leesbaar. (vind het altijd wat lastig als je je muiswiel moet zotdraaien om een klein stukje code op te zoeken)

delphi:
code:
1
2
3
4
5
6
7
8
9
10
if var='mayco' then
begin
  DoeIets(var);
  writeln('ok');
end
else
begin
  DoeIetsAnders(var);
  writeln('niet ok');
end;


het valt me eigenlijk nu pas op dat ik in delphi helemaal anders code, maar toch blijft de leesbaarheid belangrijk.

wat ik ALTIJD doe is begin/end/{/}-s weglaten als er maar 1 statement is.

waar ik mij het meest op erger op code van een ander is dat er vaak van stijl veranderd word.

Verwijderd

Rataplan schreef op 06 januari 2004 @ 14:23:
Paar overwegingen:

* als ik HTML schrijf (dus niet: PHP) ben ik nog steeds erg zuinig met newlines, tabs, etcetera. Elke byte is er dan 1 die verzonden moet worden, en verzenden kost geld. Als ik sommige HTML-sources bekijk, waar honderden regels onder elkaar tientallen tabs achter elkaar staan in documenten die duizenden keren per dag worden verzonden... Dat scheelt al snel megabytes. Niet doen dus. Wat dat betreft ben ik blij dat ik 20 jaar geleden heb leren programmeren, efficient gebruik van code is mij gelukkig nog niet volstrekt vreemd :)
Je kunt natuurlijk ook gewoon voor je iets publiceert het door een filter heen haalt die alle overbodige layout er uit haalt. Dan heb je zelf het voordeel dat je alles handig gelayout staat en op de website alles mooi compact is.

  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
Rataplan schreef op 06 januari 2004 @ 14:23:
Paar overwegingen:

* als ik HTML schrijf (dus niet: PHP) ben ik nog steeds erg zuinig met newlines, tabs, etcetera. Elke byte is er dan 1 die verzonden moet worden, en verzenden kost geld. Als ik sommige HTML-sources bekijk, waar honderden regels onder elkaar tientallen tabs achter elkaar staan in documenten die duizenden keren per dag worden verzonden... Dat scheelt al snel megabytes. Niet doen dus. Wat dat betreft ben ik blij dat ik 20 jaar geleden heb leren programmeren, efficient gebruik van code is mij gelukkig nog niet volstrekt vreemd :)
verzenden kost geld :? , ja daar zit wat in, maar, wat zijn de kosten van het onderhouden van jou onleesbare HTML ??? En daarnaast, de kosten van het dataverkeer zijn tegenwoordig nihil, eerder in dit topic kwam ook al iets naar voren over het besparen op opslagruimte, lijkt me dat jou stelling op hetzelfde neerkomt. We leven in een land waarin loonkosten de grootste kostenpost zijn en dus durf ik de stelling wel aan dat alle overige kosten m.b.t. het onderwerp van dit topic verwaarloosbaar zijn :Y)

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

FvKnijff schreef op 06 januari 2004 @ 21:20:
[...]


verzenden kost geld :? , ja daar zit wat in, maar, wat zijn de kosten van het onderhouden van jou onleesbare HTML ???
Hoho, de enige onleesbare html die ik heb besproken is die met die idiote hoeveelheden tabs erin! Mijn HTML is volgens mij nog best netjes :)

Het gaat hier niet alleen om loonkosten, los van het feit dat het meeste wat ik doe vrijwilligerswerk is. Ik schrijf nog steeds geen HTML voor breedbandgebruikers, ik schrijf HTML voor het internet. Ik heb met de kerst een paar dagen met een modem moeten werken (moeders :P) en het is verschrikkelijk hoe weinig er nog met die krengen rekening wordt gehouden. Trouwens, WML is hetzelfde verhaal: vooralsnog kost elke byte die jij overbodig laat staan elke keer dat die pagina wordt opgevraagd mensen tijd - en dus geld. En vele kleine beetjes maken vanzelf een dikke Ferrari 8)

Bovendien kan je met je servertje meer mensen sneller achter elkaar bedienen.

[ Voor 7% gewijzigd door Rataplan op 06-01-2004 21:37 ]


Journalism is printing what someone else does not want printed; everything else is public relations.


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 09:08

crisp

Devver

Pixelated

wel eens gehoord van http-compressie? dan maken die paar enters en tabjes ook niet veel meer uit hoor. Hier op GoT hadden we vroeger de optie om de topiclijsten mbv javascript te laten genereren, maar uiteindelijk is gebleken dat met http-compressie de volledige sourcecode nagenoeg net zo groot was als de javascript versie.

Ik hou wel degelijk rekening met de grootte van de source in de templates (vergeleken met 3 maanden terug is die al zo'n 25% kleiner door meer gebruik te maken van CSS), maar ik ga niet meer op een paar bytes bezuinigen.

Nu moet ik wel zeggen dat de templates netjes geindent zijn mbv tabs en enters, maar dat de templateparser die er allemaal uitstripped.

Qua programmeren neig ik zelf sterk naar performance, en er zijn dus een aantal 'standaard' dingen die ik steevast anders doe. Zo gebruik ik bijvoorbeeld bijna nooit een for-constructie maar meestal een while of do-while. Zeker als volgorde niet uitmaakt doe ik het vaak zo:

JavaScript:
1
2
3
4
var i = 1000;
do {
  // code
} while (--i);

[ Voor 20% gewijzigd door crisp op 06-01-2004 21:49 ]

Intentionally left blank


Verwijderd

Wat ik me nu afvraag is hoe jullie variabelen die bestaan uit meerdere woorden (hoort ook bij programmeerstijl) opschrijven.

Bijvoorbeeld zoals ik het doe:
int dit_is_een_lange_integer_variabele = -1;

Terwijl er ook mensen zijn die het volgende doen:
int ditIsEenLangeIntegerVariabele = -1;

Ikzelf vind de underscores beter leesbaar, en je verwart het ook niet met funtienamen. Ik kan het zo irritant vinden als iemand dat in semi Breezah stijl opschrijft ;) nofi.

[ Voor 7% gewijzigd door Verwijderd op 06-01-2004 21:54 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
Verwijderd schreef op 06 januari 2004 @ 21:53:
Ikzelf vind de underscores beter leesbaar, en je verwart het ook niet met funtienamen. Ik kan het zo irritant vinden als iemand dat in semi Breezah stijl opschrijft ;) nofi.
Ik gebruik de Pascal-Casing stijl. Deze dus:
code:
1
DitIsMijnVariabeleNaam


voor Public members/Properties. Gewoon om consistent te blijven met het framework (.NET) dat ik gebruik.

Parameters van functies en variablen, daarvoor gebruik ik CamelCasing:
code:
1
2
3
4
public void MyFunction( int myParameter)
{
      string                   myString;
}


Het staat slordig vind ik, als je begint met stijlen te mixen.
Als je een framework gebruikt, dat ook _ gebruikt in z'n variabele namen, dan kan je dat ook het beste doen.

[ Voor 12% gewijzigd door whoami op 06-01-2004 22:02 ]

https://fgheysels.github.io/


  • pjonk
  • Registratie: November 2000
  • Laatst online: 22-11 20:39
Ik vind het zelf irritant als mensen oneindig lange functies maken waarin veel te veel lokale variabelen gebruikt worden en de code bijna niet normaal te debuggen is. Ik stel altijd de regel je kan maar niet vaak genoeg code opsplitsen.

Qua coding style hoe ik er wel van als mensen de operators netjes scheiden door een spatie af en toe een lege regel etc. Als men code gaat proppen krijg ik pijn aan m'n ogen.

It’s nice to be important but it’s more important to be nice


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

crisp schreef op 06 januari 2004 @ 21:45:
wel eens gehoord van http-compressie? dan maken die paar enters en tabjes ook niet veel meer uit hoor. Hier op GoT hadden we vroeger de optie om de topiclijsten mbv javascript te laten genereren, maar uiteindelijk is gebleken dat met http-compressie de volledige sourcecode nagenoeg net zo groot was als de javascript versie.
Wel eens van gehoord, ja ;) Nuttige informatie, thanks!
Nu moet ik wel zeggen dat de templates netjes geindent zijn mbv tabs en enters, maar dat de templateparser die er allemaal uitstripped.
Dat doe ik dus zelf al :)
Qua programmeren neig ik zelf sterk naar performance
Amen! En de layout die mij daarbij het beste helpt wordt dus gebruikt ;)


Journalism is printing what someone else does not want printed; everything else is public relations.


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 09:04

RayNbow

Kirika <3

Verwijderd schreef op 06 januari 2004 @ 21:53:
Wat ik me nu afvraag is hoe jullie variabelen die bestaan uit meerdere woorden (hoort ook bij programmeerstijl) opschrijven.

Bijvoorbeeld zoals ik het doe:
int dit_is_een_lange_integer_variabele = -1;
Ik gebruik alleen underscores in constanten zoals MAX_AANTAL en alleen als ik vind dat het nodig is.
Terwijl er ook mensen zijn die het volgende doen:
int ditIsEenLangeIntegerVariabele = -1;
Ik gebruik deze stijl voor functienamen en variabelen in Java. Ik probeer echter zo kort mogelijke namen te gebruiken. ;) (Deze stijl heb ik uit een Java boek overgenomen)
whoami schreef op 06 januari 2004 @ 22:01:
[...]


Ik gebruik de Pascal-Casing stijl. Deze dus:
code:
1
DitIsMijnVariabeleNaam
Die stijl voor variabele namen gebruik ik meestal in VB. Voor control namen in VB prefix ik ze altijd met "chk", "cmd", "lst", etc. In ASP/VBS prefix ik variabelen die Strings of Objecten zijn met "str" en "obj".

Zoals je ziet verschilt mijn coding stijl qua naamgeving per taal, maar dat komt voornamelijk door het gebruik van hoofdletters in de verschillende talen zelf.

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • Delphi32
  • Registratie: Juli 2001
  • Laatst online: 00:08

Delphi32

Heading for the gates of Eden

RayNbow schreef op 06 januari 2004 @ 22:33:
Ik gebruik alleen underscores in constanten zoals MAX_AANTAL en alleen als ik vind dat het nodig is.
Dit principe (consts in uppercase) hebben we hier op het werk helaas ook. Tot in het absurde toe: True en False zijn eigenlijk constanten dus moeten in UPPERCASE, same voor enumeraties. Ik heb daar toch wat bezwaren tegen.
Voor enumeraties geldt dat daar zeer fraaie en in mijn ogen zeer leesbare standaarden zijn (in Delphi iig):
Delphi:
1
type TImportantEnumeration = (ieFirst, ieSecond, ieOpera, ..);

Voor constanten geldt het volgende: wat ik vandaag als constante definieer zou ik morgen wel eens als function willen implementeren. Waarom dan met uppercase een onderscheid gaan maken tussen de twee manieren om die waarde MaxAantal te verkrijgen? Je trekt een implementatie-aspect (de waarde van Max aantal dus) binnen in je design (nl dát er een max aantal is). Wat mij betreft schrijf ik dus MaxAantal en niet MAX_AANTAL. (dat hier Engels en NL door elkaar gebruikt wordt is weer een discussie apart).
Die stijl voor variabele namen gebruik ik meestal in VB. Voor control namen in VB prefix ik ze altijd met "chk", "cmd", "lst", etc. In ASP/VBS prefix ik variabelen die Strings of Objecten zijn met "str" en "obj".
Alhoewel ik voor controls vaak stiekum wel een dergelijk Hungarian schema gebruik (heb ooit voor een MS VB certificaat nog die afko's uit mn kop moeten leren) stap ik daar net zo gemakkelijk van af. Controls die in code toch niet gebruikt worden (labels bv, maar ook buttons als je er een ActionList aan hangt (Delphi/BC, C#?)) worden niet gerenamed, controls die maar 1x op je form terecht komen zelden, en voor de overige bekijk ik het per stuk. Ik vind persoonlijk ResourceGrid (een verwijzing naar een grid waarin resources getoond worden) makkelijker leesbaarder dan grdResources.
En waarom zou je alleen strings of objecten prefixen? Doe ze geen van allen, of allemaal, zou ik zeggen. En ik kies toch voor het laatste. Met de huidige generatie tools (code insight/code completion ed) is het type van een variabele zo gemakkelijk te zien dat ik die duffe afkortingen graag weglaat :)

  • riezebosch
  • Registratie: Oktober 2001
  • Laatst online: 31-10 11:58
drm schreef op 06 januari 2004 @ 19:09:
Als je dan een reply doet, voeg dan in ieder geval iets toe aan het topic :/
Ok drm, maar vond dat alle pro's en con's al wel gezegd waren. Maar bedacht met net toch nog wat (vanuit bed): ikzelf geef voorkeur aan ook acolade-openen op volgende regel, omdat zo openen en sluiten op zelfde hoogte staan. En het argument van The_Tzar dat regel iets moet zijn en daarom de acolade-openen erachter moet en niet eronder gaat ook niet op voor acolade-sluiten. Dan zou je die er ook achter moeten zetten... O-)

Canon EOS 400D + 18-55mm F3.5-5.6 + 50mm F1.8 II + 24-105 F4L + 430EX Speedlite + Crumpler Pretty Boy Back Pack


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

crisp schreef op 06 januari 2004 @ 21:45:
Qua programmeren neig ik zelf sterk naar performance, en er zijn dus een aantal 'standaard' dingen die ik steevast anders doe. Zo gebruik ik bijvoorbeeld bijna nooit een for-constructie maar meestal een while of do-while. Zeker als volgorde niet uitmaakt doe ik het vaak zo:

JavaScript:
1
2
3
4
var i = 1000;
do {
  // code
} while (--i);
mja, het is maar wat je leuk vind. Ik vind het mierenneukerij, en een for-lusje leest imho duidelijker dan wat je daar doet. Dat een for de conditie checkt al voor de eerste iteratie kun je op de kop toe nemen, bovendien wordt dat vaak weggeoptimaliseerd door de compiler (puur omdat het een aanname kan doen over de variabele die je zojuist geinitialiseerd hebt). Het is natuurlijk wat anders als de conditie bestaat uit een functie-aanroep die wat ingewikkelde shit doorneemt, maar de vraag is of een "simpel" for-lusje dan sowieso wel voldoet (dan moet je idd gaan kijken of een loopje minstens 1 keer doorlopen moet worden, en aan de hand daarvan voor een for/while of een do kiezen).

Bijkomend voordeel van een for-lus is overigens dat je increment-semantics ook gewoon werken bij een continue, wat bij een while/do lus niet het geval is :)

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


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 09:04

RayNbow

Kirika <3

Delphi32 schreef op 07 januari 2004 @ 00:23:
[...]

Alhoewel ik voor controls vaak stiekum wel een dergelijk Hungarian schema gebruik (heb ooit voor een MS VB certificaat nog die afko's uit mn kop moeten leren) stap ik daar net zo gemakkelijk van af. Controls die in code toch niet gebruikt worden (labels bv, maar ook buttons als je er een ActionList aan hangt (Delphi/BC, C#?)) worden niet gerenamed, controls die maar 1x op je form terecht komen zelden, en voor de overige bekijk ik het per stuk. Ik vind persoonlijk ResourceGrid (een verwijzing naar een grid waarin resources getoond worden) makkelijker leesbaarder dan grdResources.
En waarom zou je alleen strings of objecten prefixen? Doe ze geen van allen, of allemaal, zou ik zeggen. En ik kies toch voor het laatste. Met de huidige generatie tools (code insight/code completion ed) is het type van een variabele zo gemakkelijk te zien dat ik die duffe afkortingen graag weglaat :)
Controls die ik niet in de code gebruik geef ik ook geen eigen naam. Over het prefixen in ASP/VBS, dat komt omdat ik voornamelijk alleen de variabelenamen strSQL, objConn, objCmd, en objRS gebruik ;)

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 08:56

Janoz

Moderator Devschuur®

!litemod

Delphi32 schreef op 07 januari 2004 @ 00:23:
Voor constanten geldt het volgende: wat ik vandaag als constante definieer zou ik morgen wel eens als function willen implementeren. Waarom dan met uppercase een onderscheid gaan maken tussen de twee manieren om die waarde MaxAantal te verkrijgen?
Omdat het nu nog een constante is en pas morgen een functie. Voor het wijzigen gebruik je een refactor tool. Het lijkt me een beetje onzinnig om van standaarden af te wijken omdat je misschien ooit nog wel eens iets gaat veranderen.

Je zult het toch allemaal weer bij langs moeten aangezien een functie aanroep haakjes erachter heeft. Verder is een constante vaak static terwijl dat bij een functie/methode niet zo is.
Je trekt een implementatie-aspect (de waarde van Max aantal dus) binnen in je design (nl dát er een max aantal is).
Toch zijn dat 2 verschillende dingen. De tweede is het feit dat het aantal een bovengrens heeft terwijl het eerste aangeeft op welke waarde deze bovengrens licht.
Wat mij betreft schrijf ik dus MaxAantal en niet MAX_AANTAL. (dat hier Engels en NL door elkaar gebruikt wordt is weer een discussie apart).


[...]

Alhoewel ik voor controls vaak stiekum wel een dergelijk Hungarian schema gebruik (heb ooit voor een MS VB certificaat nog die afko's uit mn kop moeten leren) stap ik daar net zo gemakkelijk van af. Controls die in code toch niet gebruikt worden (labels bv, maar ook buttons als je er een ActionList aan hangt (Delphi/BC, C#?)) worden niet gerenamed, controls die maar 1x op je form terecht komen zelden, en voor de overige bekijk ik het per stuk. Ik vind persoonlijk ResourceGrid (een verwijzing naar een grid waarin resources getoond worden) makkelijker leesbaarder dan grdResources.
En waarom zou je alleen strings of objecten prefixen? Doe ze geen van allen, of allemaal, zou ik zeggen. En ik kies toch voor het laatste. Met de huidige generatie tools (code insight/code completion ed) is het type van een variabele zo gemakkelijk te zien dat ik die duffe afkortingen graag weglaat :)
mbt hungarian style: Ik heb het zelf nooit wat gevonden. Het achterhalen van het type laat ik wel door de IDE gebeuren. Daarvoor ga ik mijn variabele namen niet 'misbruiken'. Imho zegt het al heel wat dat MS (de grote hungarian aanhanger) zelf met .NET hier vanaf stapt. Ikzelf hou gewoon de naamgeving zoals gebruikt in Java aan.

mbt NL/EN: Is wel ff leuk om dat aan te snijden :). Ikzelf probeer alles gewoon in het engels te doen. getEigenschap vind ik een stuk lelijker dan getProperty. Met commentaar wisselt het nog wel eens. Leidraad daar is dat ik duidelijk wil overbrengen wat ik bedoel. Als me dat zo snel niet in het engels lukt zet ik het in het nederlands erneer. Ook veel 'tijdelijk commentaar' doe ik in het nederlands (TODO en FIXME en blauwdruk van een methode ed). Later verwijder ik dit over vertaal het alsnog om de werking te verduidelijken.

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


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 28-11 08:35

curry684

left part of the evil twins

Verwijderd schreef op 06 januari 2004 @ 19:52:
Ook nog iets waarbij je veel verschillende meningen ziet: inspringen met tabs of spaties? Zelf gebruik ik altijd liever tabs, maar in sommige coding guides zweren ze toch weer bij het zetten van drie spaties. Zijn er hier ook nog mensen die liever spaties gebruiken en daar een reden voor hebben?
Tabs zijn evil: zet jij maar eens een van je CPP's even online en surf er met een webbrowser heen :Y)

Altijd de functie 'Replace tabs with spaces' aanzetten, zit in iedere IDE (en staat in Borland en VS.net default aan geloof ik, VS6 niet).

Ik gebruik zelf verder ook gewoon 2 spaties insprong, maar dat is volgens mij redelijk taalafhankelijk: een taal als C/C++ waar je nogal vaak nested loops bij uit de kast trekt vind ik de overzichtelijkheid lineair afnemen met het aantal spaties per indent. Voor een hogere scripttaal maakt het mij persoonlijk minder uit en vind ik 3 of 4 ook acceptabel.

Professionele website nodig?


  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 03-07 23:56

Engineer

Software

.

[ Voor 99% gewijzigd door Engineer op 13-10-2018 11:01 ]


  • WildernessChild
  • Registratie: Februari 2002
  • Niet online

WildernessChild

Voor al uw hersenspinsels

Het verbaast mij dat in deze 6 pagina's de GNU coding style er nog niet tussen staat... zie hier
Ik ben er wel blij om, want deze stijl is echt een ramp ;)
C:
1
2
3
4
5
6
7
8
9
10
11
if (x < foo (y, z))
  haha = bar[4] + 5;
else
  {
    while (z)
      {
        haha += foo (z, z);
        z--;
      }
    return ++x + bar ();
  }

Degene die dit bedacht heeft, en dan met name de inspringing, moeten ze opknopen imho :)
Verder zijn er natuurlijk nog wat dingetjes die ik zelf anders zou doen (spatie na if, while en functie-aanroep, increment in return statement, accolades op nieuwe regel), maar vooral de indent vind ik smerig.

Maker van Taekwindow; verplaats en resize je vensters met de Alt-toets!


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

curry684 schreef op 07 januari 2004 @ 09:55:
[...]

Tabs zijn evil: zet jij maar eens een van je CPP's even online en surf er met een webbrowser heen :Y)
cpp's zijn er niet voor gemaakt om geopend te worden door webbrowsers :P
(ik gebruik zelf standaard altijd tabs)

Doet Visual Studio eigenlijk ook stapjes van [tabgrootte] als je aan het begin van een ingesprongen regel staat, en de drukt op backspace? Of haalt ie er dan maar slechts 1 spatie af

Ik gok dat VS hier wel rekening mee houdt, maar er zijn editors die dat dus niet doen, en dan zijn spaties echt mega-irritant :) Maar ik snap je argument om geen tabs te gebruiken, ben het er op zich zelfs wel een beetje mee eens, maar ik blijf toch lekker gewoon tabs gebruiken :Y)

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.


  • whoami
  • Registratie: December 2000
  • Laatst online: 09:35
.oisyn schreef op 07 januari 2004 @ 20:35:
[...]
Doet Visual Studio eigenlijk ook stapjes van [tabgrootte] als je aan het begin van een ingesprongen regel staat, en de drukt op backspace? Of haalt ie er dan maar slechts 1 spatie af
Als je ingesteld hebt dat je tabs spaces moeten worden, en je doet backspace, dan haalt ie er maar 1 spatie vanaf, en dat is irritant ja.

https://fgheysels.github.io/


Verwijderd

WildernessChild schreef op 07 januari 2004 @ 20:31:
Het verbaast mij dat in deze 6 pagina's de GNU coding style er nog niet tussen staat... zie hier
Ik ben er wel blij om, want deze stijl is echt een ramp ;)
C:
1
2
3
4
5
6
7
8
9
10
11
if (x < foo (y, z))
  haha = bar[4] + 5;
else
  {
    while (z)
      {
        haha += foo (z, z);
        z--;
      }
    return ++x + bar ();
  }

Degene die dit bedacht heeft, en dan met name de inspringing, moeten ze opknopen imho :)
Deze style is wel even wennen maar sinds ik meewerk aan open source project waar deze style gebruikt heb ik het meeste onbewust toch overgenomen.
Alleen de spatie in de functie aanroepen vind ik zinloos.

Ik denk dat deze style onstaan in een tijd waarin nog niet iedereen syntax highlighting had in hun editor en volgens mij is dit de een van de best leesbare styles als er geen highlighting is.

Verder is de manier van indenten en braces plaatsen niet zo belangrijk als het maar consequent gebeurt. Maar ik kan me wel ergeren aan te lange regels die niet netjes worden afgebroken.

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07 12:07
zo dit is dus het use spaces or tabs topic ;)

toch wel ridiculous in een tijd waardat neurale netten stock checks doen, quasi alles met een chipje draait en dan zijn de programmeurs er nog niet in geslaagt een ietwat deftig code 'beautifier' te gebruiken ;)

NOOIT gesnapt ;)

voor 'PHP' gebruik ik PHPEdit. Druk ik op CRTL+F dan formateerd ie lekker het hele bestand naar het format dat ik liefts heb. Kom het van iemand anders geen probleem. Zat ook in JBuilder trouwens. Van Visual STudio weet ik het niet, maar als het er niet inzit - schandalig.

Mijn opinie: ieder zijn stijl waar ie het minste fouten in maakt. (ken mensen die een witte lijn tussen elke regel code proppen). En gewoon deftige editors gebruiken.

En dan is er vast nog hoe noem ik mijn variablen topic ;)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

En dan is er vast nog hoe noem ik mijn variablen topic ;)
Dat wordt toch alweer een stukje lastiger met je PHPEdit beautifier ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
En gewoon deftige editors gebruiken.
Editors zijn naar mijn mening nog niet geavanceerd genoeg. Vooral voor layout zouden er meer voorkeuren instelbaar moeten zijn die bovendien afhankelijk moeten zijn van de context.

Bijvoorbeeld het hierboven genoemde tabs/backspace probleem. De backspace wordt zowel gebruikt als manier om een niveautje omhoog te gaan wat nesting betreft, en als manier om bijvoorbeeld een stukje code netjes te positioneren. Wanneer je met je cursor in een expressie staat, dan zou je misschien wel willen dat de backspace maar één teken verwijdert. Wanneer je echter op block/statement niveau bezig bent dan wil juist dat de backspace je nesting diepte verlaagt.

Ik betwijfel echter hoever een editor hierin kan gaan. Stel dat je je complete voorkeuren kan definiteren. Zou je dan een editor kunnen maken waarbij je zelf geen expliciete layout meer aangeeft maar dat de editor dit automatisch in jouw style plaatst. Het lijkt me dat je dan een heleboel verschillende voorkeuren hebt. En dat je zelfs met 1000 opties er waarschijnlijk nog achter komt dat je sommige dingen toch nog even met wat spaties en tabs zou willen positioneren omdat het er dan net wat beter uitziet.

[ Voor 27% gewijzigd door Infinitive op 07-01-2004 22:32 ]

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


Verwijderd

Infinitive schreef op 07 januari 2004 @ 22:30:
Bijvoorbeeld het hierboven genoemde tabs/backspace probleem. De backspace wordt zowel gebruikt als manier om een niveautje omhoog te gaan wat nesting betreft, en als manier om bijvoorbeeld een stukje code netjes te positioneren. Wanneer je met je cursor in een expressie staat, dan zou je misschien wel willen dat de backspace maar één teken verwijdert. Wanneer je echter op block/statement niveau bezig bent dan wil juist dat de backspace je nesting diepte verlaagt.
Vim haalt hier toch echt een complete "tab" weg (die dus uit spaties bestaat) op het moment dat ik ergens via de tab toets spaties ingevoegd heb. Bij alle andere gevallen haalt hij maar 1 karakter weg :)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Editors zijn naar mijn mening nog niet geavanceerd genoeg. Vooral voor layout zouden er meer voorkeuren instelbaar moeten zijn die bovendien afhankelijk moeten zijn van de context.
Je zou voor de gein eens naar IDEA moeten kijken. Dat is een IDE waarvan ik zeg: Die mag er wezen. Als er voor elke taal zo'n IDE zou zijn zou ik in m'n handjes wrijven.

Het is dus mogelijk, er wordt echter veel te weinig aandacht aan besteed... Hoeveel programmaatjes zijn er niet met syntax highlighting? En hoeveel met codesweepers? Wat zou de verhouding ongeveer zijn? 50:1 ofzo :?
De backspace wordt zowel gebruikt als manier om een niveautje omhoog te gaan wat nesting betreft, en als manier om bijvoorbeeld een stukje code netjes te positioneren.
Dit vind ik dus echt heel vreemd. Waarom zou een backspace in vredesnaam een compleet niveau hoger moeten zijn? Als je met spaces werkt is een backspace gewoon één space back.

Voor unindent (wat jij bedoelt) gewoon shift+tab of ctrl+u. Backspace moet alleen maar doen waar het voor gemaakt is; het karakter voor de cursor weghalen. Als dat dan een tab-character is; sja dan doe je een unindent, maar ik werk niet met tab-characters dus daar heb ik geen last van :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 30-11 20:54

.oisyn

Moderator Devschuur®

Demotivational Speaker

wat doet een codesweeper precies?

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.


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

.oisyn:
wat doet een codesweeper precies?
codesweeper == beautifier

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1 2 Laatste