Programmeerstijl
description
Transcript of Programmeerstijl
![Page 1: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/1.jpg)
Programmeerstijl
Hoofdstuk 21
![Page 2: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/2.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 2
Inleiding
Belang van een goede programmeerstijl:Programma’s worden door meerdere mensen
gemaakt Onderlinge afspraken maken Leesbaarheid (irritatie vermijden) Consistentie, uniforme code
Hergebruik van code bevorderen Objecten Componenten
![Page 3: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/3.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 3
Programmalay-out
NamenBetekenisvolBegint met Hoofdletter: keyword, klasse,
methode en propertyBegint met kleine letter: parameter, lokale
variabele, instantievariabeleHernoem de namen van components
gegenereerd door VSGeen set/get in de naam van een property
![Page 4: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/4.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 4
Programmalay-out
Inspringen In principe niet nodig, maar erg aangeraden IDE helpt hierbijLange regels opsplitsen ( _ juist plaatsen)
WitregelsScheiden van methoden, member variabelen,
properties#Region scheiden van blokken code
1 klasse per bestand
![Page 5: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/5.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 5
Commentaar
Niet herhalen wat code al duidelijk maakt Duidelijke code behoeft weinig tot geen
commentaar Wees spaarzaam Wel belangrijk: API documentatie
Wat betekent de klasseWat doen Public methoden en properties
![Page 6: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/6.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 6
Constanten
Verhogen leesbaarheid Sommigen prefereren hoofdletters
(bv MAXINDEX)
![Page 7: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/7.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 7
Klassen Bevorderen hergebruik, flexibiliteit Lengte van een klasse beperken Lengte van een methode beperken Inkapseling Naamgeving Volgorde:
1. Instantievariabelen2. Public methoden3. Properties4. Private methoden
![Page 8: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/8.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 8
Geneste IfsIf a > b Then If a > c Then largest = a Else largest = c End IfElse If b > c Then largest = b Else largest = c End IfEnd If
If a >= b And a >= c Then largest = aEnd IfIf b >= a And b >= c Then largest = bEnd IfIf c >= a And c >= b Then largest = cEnd If
If a >= b And a >= c Then largest = aElseIf b >= a And b >= c Then largest = bElse largest = cEnd If
![Page 9: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/9.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 9
Geneste lussen
yCoord = 10For floor = 0 To floors xCoord = 10 For flat = 0 To flats paper.DrawRectangle(myPen, xCoord, yCoord, 10, 10) xCoord = xCoord + 15 Next yCoord = yCoord + 15Next
Aparte methode van maken is duidelijker
![Page 10: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/10.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 10
Geneste lussenyCoord = 10For floor = 0 To floors DrawFloor(yCoord, flats) yCoord = yCoord + 15Next
Private Sub DrawFloor(ByVal yCoord As Integer, ByVal flats As Integer) Dim xCoord As Integer = 10 Dim flat As Integer Dim paper As Graphics
paper = PictureBox1.CreateGraphics() Dim myPen As Pen = New Pen(Color.Black)
For flat = 0 To flats paper.DrawRectangle(myPen, xCoord, yCoord, 10, 10) xCoord = xCoord + 15 NextEnd Sub
![Page 11: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/11.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 11
Ingewikkelde voorwaardenConst maxIndex As Integer = 99Dim table(maxIndex) As Integer
table(0) = -99table(23) = 42table(99) = 99
Dim wanted As IntegerDim index As Integer
wanted = CInt(InputTextBox.Text)
index = 0While index < maxIndex And table(index) <> wanted index = index + 1End WhileIf table(index) = wanted Then ResultTextBox.Text = "found"Else ResultTextBox.Text = "not found"End If
![Page 12: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/12.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 12
Ingewikkelde voorwaardenConst maxIndex As Integer = 99Dim table(maxIndex) As Integer
table(0) = -99table(23) = 42table(99) = 99
Dim wanted As IntegerDim index As Integer
Dim state As IntegerConst stillSearching As Integer = 0Const found As Integer = 1Const notFound As Integer = 2
wanted = CInt(InputTextBox.Text)...
![Page 13: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/13.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 13
Ingewikkelde voorwaardenindex = 0state = stillSearchingWhile state = stillSearching If wanted = table(index) Then state = found ElseIf index = maxIndex Then state = notFound End If index = index + 1End While
If state = found Then ResultTextBox.Text = "found"Else ResultTextBox.Text = "not found"End If
![Page 14: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/14.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 14
Documentatie
ProgrammaspecificatieWat moet het programma doen?
Screenshots Broncode met commentaar Ontwerp (UML diagrammen) Testen Geschiedenis van alle wijzigingen gebruikershandleiding
![Page 15: Programmeerstijl](https://reader036.fdocuments.net/reader036/viewer/2022082715/56815b72550346895dc96a08/html5/thumbnails/15.jpg)
Hoofdstuk 21 Visual Basic .NET voor studenten 15
Achtergrondinformatie Stijl- en programmeerrichtlijnen van Microsoft voor .NET framework
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpgenref/html/cpconNETFrameworkDesignGuidelines.asp
Documentatie systeem om HTML te genereren uit eigen VB code (zoals de online Help van VS)
http://www.codeplex.com/Sandcastle