//edit meon: dit stond oorspronkelijk in het "Nieuw scherm"-topic: http://www.userbase.be/forum/viewtopic.php?t=14738
Code breed of lang?
-
dupondje
- Premium Member

- Berichten: 649
- Lid geworden op: 14 sep 2006, 23:55
- Uitgedeelde bedankjes: 1 keer
- Bedankt: 54 keer
- Recent bedankt: 1 keer
Widescreen is superhandig om te programmeren
lekker breed scherm, want met alle toolbars enzo soms aan de zijkant van het scherm 
//edit meon: dit stond oorspronkelijk in het "Nieuw scherm"-topic: http://www.userbase.be/forum/viewtopic.php?t=14738
//edit meon: dit stond oorspronkelijk in het "Nieuw scherm"-topic: http://www.userbase.be/forum/viewtopic.php?t=14738
-
crapiecorn
- Elite Poster

- Berichten: 2187
- Lid geworden op: 01 feb 2003, 11:58
- Uitgedeelde bedankjes: 44 keer
- Bedankt: 12 keer
Code groeit meer in de lengte dan in de breedte. Voor een goed overzicht te bewaren kan je je widescreen beter kantelen.
-
ubremoved_539
- Deel van't meubilair

- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 434 keer
- Bedankt: 1972 keer
Bij het modulair coderen blijft de lengte nochtans ook beperkt... tijd voor een rewrite, ipv. nieuwe hardwarecrapiecorn schreef:Code groeit meer in de lengte dan in de breedte.
Tsjah, in de breedte ook hoor.crapiecorn schreef:Code groeit meer in de lengte dan in de breedte. Voor een goed overzicht te bewaren kan je je widescreen beter kantelen.
Dit is een standaard functie uit één van mijn projecten:
Code: Selecteer alles
<System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Insert, True)> Public Function AddKlant(ByVal Code As Integer, ByVal Bedrijfsnaam As String, ByVal Naam As String, ByVal Straat As String, ByVal Postcode As String, ByVal Gemeente As String, ByVal Provincie As String, ByVal Land As String, ByVal Tel1 As String, ByVal Tel2 As String, ByVal Email As String, ByVal Fax As String, ByVal Opmerkingen As String, ByVal Status As Nullable(Of Integer), ByVal Cash_Credit_Code_Nu As Nullable(Of Integer), ByVal Credit_Limit As Nullable(Of Decimal), ByVal Balance As Nullable(Of Decimal), ByVal VAT_Number As String, ByVal Country_Code As String, ByVal Customer_Reference As String, ByVal Number_of_Volvo_Vehicles As Nullable(Of Integer), ByVal Number_of_NonVolvo_Vehicles As Nullable(Of Integer), ByVal CDB_Code As String, ByVal Web_Address As String, ByVal Additional_Phone_Number_1 As String, ByVal Additional_Phone_Number_2 As String, ByVal Additional_Phone_Number_3 As String, ByVal Natureza_Juridica As String, ByVal CGC_CPF_Number As String) As BooleanIntel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
- meon
- Administrator

- Berichten: 16757
- Lid geworden op: 18 feb 2003, 22:02
- Twitter: meon
- Locatie: Bree
- Uitgedeelde bedankjes: 582 keer
- Bedankt: 780 keer
Dat kan je ook leesbaar onder mekaar zetten eh
Je kan quasi elke taal (oké, geen VB) op 1 regel schrijven als ge wilt ...
Code: Selecteer alles
Public Function AddKlant(
ByVal Code As Integer,
ByVal Bedrijfsnaam As String,
ByVal Naam As String,
ByVal Straat As String,
ByVal Postcode As String,
ByVal Gemeente As String,
ByVal Provincie As String,
ByVal Land As String,
...Op die manier ben je dan weer geen gebruik aan het maken van je widescreen scherm 
Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
-
crapiecorn
- Elite Poster

- Berichten: 2187
- Lid geworden op: 01 feb 2003, 11:58
- Uitgedeelde bedankjes: 44 keer
- Bedankt: 12 keer
Niet een paar underscores vergeten ?meon schreef:Dat kan je ook leesbaar onder mekaar zetten ehJe kan quasi elke taal (oké, geen VB) op 1 regel schrijven als ge wilt ...Code: Selecteer alles
Public Function AddKlant( ByVal Code As Integer, ByVal Bedrijfsnaam As String, ByVal Naam As String, ByVal Straat As String, ByVal Postcode As String, ByVal Gemeente As String, ByVal Provincie As String, ByVal Land As String, ...
-
crapiecorn
- Elite Poster

- Berichten: 2187
- Lid geworden op: 01 feb 2003, 11:58
- Uitgedeelde bedankjes: 44 keer
- Bedankt: 12 keer
Volgens de meeste conventions moet je zo functie opsplisen in meerdere lijnen, dit is totaal onleesbaar.DarthDavy schreef:[
Tsjah, in de breedte ook hoor.
Dit is een standaard functie uit één van mijn projecten:
Code: Selecteer alles
<System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Insert, True)> Public Function AddKlant(ByVal Code As Integer, ByVal Bedrijfsnaam As String, ByVal Naam As String, ByVal Straat As String, ByVal Postcode As String, ByVal Gemeente As String, ByVal Provincie As String, ByVal Land As String, ByVal Tel1 As String, ByVal Tel2 As String, ByVal Email As String, ByVal Fax As String, ByVal Opmerkingen As String, ByVal Status As Nullable(Of Integer), ByVal Cash_Credit_Code_Nu As Nullable(Of Integer), ByVal Credit_Limit As Nullable(Of Decimal), ByVal Balance As Nullable(Of Decimal), ByVal VAT_Number As String, ByVal Country_Code As String, ByVal Customer_Reference As String, ByVal Number_of_Volvo_Vehicles As Nullable(Of Integer), ByVal Number_of_NonVolvo_Vehicles As Nullable(Of Integer), ByVal CDB_Code As String, ByVal Web_Address As String, ByVal Additional_Phone_Number_1 As String, ByVal Additional_Phone_Number_2 As String, ByVal Additional_Phone_Number_3 As String, ByVal Natureza_Juridica As String, ByVal CGC_CPF_Number As String) As Boolean
Inderdaad lijkt mij een beter idee dan alles als parameter meegeven. Beetje refactoring toepassennogChoco schreef:Beetje offtopic, maar DarthDavy: kon je geen (nested) class gebruiken om al die parameters als 1 object te bundelen? ('t Is maar een suggestie)
Om dan maar helemaal off-topic te gaan, maar jah, die function bestaat ook met als parameter een klasse die een klant-object aanvaardt, maar er zijn een boel situaties waarbij AddKlant moet uitgevoerd worden waarbij de klasse Klant helemaal geen nut heeft en dan kan ik de keuze gaan maken door voor iedere van die situaties een eigen overloaded AddKlant te gaan schrijven of ik schrijf 1 generieke AddKlant die met alle situaties overweg kan (let erop dat al mijn parameters nullable objecten zijn, behalve de strings omdat die niet nullable kunnen zijn en dan als Nothing doorgegeven worden).nogChoco schreef:Beetje offtopic, maar DarthDavy: kon je geen (nested) class gebruiken om al die parameters als 1 object te bundelen? ('t Is maar een suggestie)
Ik heb dus de keuze gemaakt om 1 generieke functie te schrijven, maar dat is natuurlijk ook niet alles omdat je dan aanroepen krijgt, die parameters als Nothing of als New Nullable(Of Integer) doorgeven.
Als ik eens de tijd heb, ga ik wel eens een klasse schrijven die deze situaties omzeilt. Erg prioritair staat dit niet op het programma, omdat het ding doet wat het moet doen (klant maalt niet om 'dirty' code).
Ik was maar een voorbeeldje aan het geven dat widescreen wel handig kan zijn. En deze functie is opgesplitst met underscores in verschillende lijnen.crapiecorn schreef:
Volgens de meeste conventions moet je zo functie opsplisen in meerdere lijnen, dit is totaal onleesbaar.
Mental note: geen stukjes code meer posten...
Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
-
crapiecorn
- Elite Poster

- Berichten: 2187
- Lid geworden op: 01 feb 2003, 11:58
- Uitgedeelde bedankjes: 44 keer
- Bedankt: 12 keer
Modulair coderen verhoogt de leesbaarheid niet altijd. Bv als je van een for lus en een daarin geneste lus 1 lus maakt. ipv die geneste lus gebruik je dan een berekening voor de 2de waarde. De volgende die dit leest zal er niet zo vlot overgaan. Ook ternaire operatoren vind ik niet zo vlot lezen.r2504 schreef:Bij het modulair coderen blijft de lengte nochtans ook beperkt... tijd voor een rewrite, ipv. nieuwe hardwarecrapiecorn schreef:Code groeit meer in de lengte dan in de breedte.
Wat zijn ternaire operatoren?
Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
-
ubremoved_539
- Deel van't meubilair

- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 434 keer
- Bedankt: 1972 keer
Verkorte versie van IF/ELSE toestanden, ook wel eens de IIF.DarthDavy schreef:Wat zijn ternaire operatoren?
Wat de opmerking van de lus betreft ben ik trouwens niet mee... van twee lussen één maken (evenals ternaire operatoren) heeft wat mij betreft niets te maken met modulair programmaren.
En van de functie AddKlant hierboven krijg ik helemaal kriebels (en gaat tegen alle regels van elementair object oriented design in).
-
crapiecorn
- Elite Poster

- Berichten: 2187
- Lid geworden op: 01 feb 2003, 11:58
- Uitgedeelde bedankjes: 44 keer
- Bedankt: 12 keer
Heeft niets met de essentie van Modulair te maken, maar wordt soms gebruikt om modules klein te houden. Al zijn "modules" tegenwoordig wel verleden tijd.
De IIF is wel trager dan de conventionele IF...ELSE... constructie. Zeker in VB.
In C bestaat die ook, maar ik ken die eerder als de conditionele operator:
voorbeeld:
Zeker handiger dan schrijven:
In C bestaat die ook, maar ik ken die eerder als de conditionele operator:
Code: Selecteer alles
expressie 1 : expressie 2 ? expressie 3Code: Selecteer alles
int min, a, b;
a = 5;
b = 3;
min = a < b ? a : b;Code: Selecteer alles
if a < b
min = a;
else
min = b;Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
- Ofloo
- Elite Poster

- Berichten: 5271
- Lid geworden op: 04 okt 2004, 07:36
- Locatie: BALEN
- Uitgedeelde bedankjes: 57 keer
- Bedankt: 92 keer
Persoonlijk ben ik zo verbose mogelijk en wrap ik zo weinig mogelijk, ik vind het makkelijker om achteraf dan iets terug te vinden, indien het verkeerd is, trouwens ik vind dat ik op deze manier ook minder fouten maak.
het gaat hier dan ook niet over hetzelfde. IFF is een functie en het zou me niet verwonderen als daar bij vb nog wat extra validatie achter steekt.DarthDavy schreef:De IIF is wel trager dan de conventionele IF...ELSE... constructie. Zeker in VB.
expressie 1 : expressie 2 ? expressie 3
zal dan weer wel naar dezelfde bytecode compileren als
if (expressie 1)
expressie 2
else
expressie 3
gewoon een andere schrijfwijze dus
Please help, looking for a way to get rich and fast
- GeertAki
- Pro Member

- Berichten: 276
- Lid geworden op: 09 jan 2006, 13:28
- Locatie: Mechelen
- Uitgedeelde bedankjes: 1 keer
Ik vind die verkorte if-structuur anders leesbaarder dan de lange vorm, omdat je met heel weinig te lezen alles weet.
In java:
Voor de rest vind ik dat bij elk code-blok (ook al is het slechts één lijn) accolades horen. Dat verkleint de kans op bugs, aangezien het telkens duidelijk afgescheiden is en als je een if-hebt met slechts één statement in en nadien komt er een tweede statement bij (door een andere programmeur of door jezelf), dan kan je die accolades wel eens vergeten toevoegen, zeker als je code niet goed geformatteerd was.
Ik stel mijn instellingen hier ook wel op 120 karakters per regel ipv de standaard 80. Dat werkt prettiger vind ik.
In java:
Code: Selecteer alles
int min = (a < b) ? a : b;Ik stel mijn instellingen hier ook wel op 120 karakters per regel ipv de standaard 80. Dat werkt prettiger vind ik.
-
crapiecorn
- Elite Poster

- Berichten: 2187
- Lid geworden op: 01 feb 2003, 11:58
- Uitgedeelde bedankjes: 44 keer
- Bedankt: 12 keer
Daarom vind ik talen als python, vb ook minder leesbaar. Als je bv hebt leren programmeren met een C like syntax en dan moet je VB leren , not cool. Ik kan de keren niet meer tellen dat ik set methods typ ipv bla.property =GeertAki schreef:Ik vind die verkorte if-structuur anders leesbaarder dan de lange vorm, omdat je met heel weinig te lezen alles weet.
In java:Voor de rest vind ik dat bij elk code-blok (ook al is het slechts één lijn) accolades horen. Dat verkleint de kans op bugs, aangezien het telkens duidelijk afgescheiden is en als je een if-hebt met slechts één statement in en nadien komt er een tweede statement bij (door een andere programmeur of door jezelf), dan kan je die accolades wel eens vergeten toevoegen, zeker als je code niet goed geformatteerd was.Code: Selecteer alles
int min = (a < b) ? a : b;
Ik stel mijn instellingen hier ook wel op 120 karakters per regel ipv de standaard 80. Dat werkt prettiger vind ik.
Brede code is mijns inziens niet leesbaar. Ik probeer toch qua overzicht niet teveel op 1 lijn te zetten.
Ik gebruik liever breedbeeld om in HTML meerdere paginas op het scherm te displayen. Vooral in combinatie met Javascript en XML is multiwindow wel fijn werken.
Ik gebruik liever breedbeeld om in HTML meerdere paginas op het scherm te displayen. Vooral in combinatie met Javascript en XML is multiwindow wel fijn werken.
Dan pak je toch gewoon C# ipv VB, net hetzelfde.crapiecorn schreef: Daarom vind ik talen als python, vb ook minder leesbaar. Als je bv hebt leren programmeren met een C like syntax en dan moet je VB leren , not cool. Ik kan de keren niet meer tellen dat ik set methods typ ipv bla.property =
Ik heb ooit ook een project in Python gedaan. Ik vond het best een leutige taal zo zonder declaraties en code-blokken door netjes te indenteren. Python verplicht je wel van goed te indenteren en dat vind ik wel goed (als ik zo soms de code van sommige C-programmeurs zie... jeeeees... hun accolades staan er wel, maar de indentatie springt van links naar rechts... ook niet echt leesbaar hoor).
Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
Voor mij hebben accolades en consoorten (de parenthesis hel van LISP, bijvoorbeeld) enkel nut bij scripting talen. Voor loutere programmeertalen vind ik het logischer dat de IDE de layout regelt, niet de taal zelf.
Als de layout deel uitmaakt van de taal, bestaat de kans dat er fouten tegen gemaakt worden, wat nogal overbodig is, vind ik.
Als de layout deel uitmaakt van de taal, bestaat de kans dat er fouten tegen gemaakt worden, wat nogal overbodig is, vind ik.
Jullie spreken allemaal over IDE's en tegenwoordig kan ik ook niet meer zonder, maar toen ik leerde progammeren was toch maar meestal gewoon in notepad (allez, en iets meer geavanceerde versie natuurlijk) en van IDE's en formatting functies was er nog geen sprake.
En ik programmeer nu nog altijd vaak in geavanceerde teksteditors zoals UltraEdit of Notepad++.
En ik programmeer nu nog altijd vaak in geavanceerde teksteditors zoals UltraEdit of Notepad++.
Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS
-
ubremoved_539
- Deel van't meubilair

- Berichten: 29849
- Lid geworden op: 28 okt 2003, 09:17
- Uitgedeelde bedankjes: 434 keer
- Bedankt: 1972 keer
Toen... tja, toen had m'n computer ook maar 1 KB geheugen, en later hadden we een Pascal compiler en editor tesamen die slechts 32 KB groot was. Vandaag de dag is het splashscreen al groter dan 32 KBDarthDavy schreef:maar toen ik leerde progammeren
Splashscreens zijn zoooooo 2002 
Intel Core 2 Duo E6600 - 2GB DDR2 SDRAM PC5300 - MSI P965 Platinum - GeForce 7900GTX 512MB DDR3 - Western Digital 150GB 16MB Raptor - Western Digital 250GB 16MB - Zalman Powersupply ZM-460-APS 460W - Thermaltake Soprano VB1000SWS

