Bevor wir unserem Projekt neue Funktionen hinzufügen, wollen wir zunächst mal wieder unsere Codezeilen auf eventuelle Optimierungsmöglichkeiten untersuchen. Das sollten wir immer wieder mal tun, wenn ein Projekt allmählich wächst, denn es bringt in der Regel ein Plus an Übersichtlichkeit. Und darauf sollten wir auch achten! Es bringt oft nichts, ein Projekt "auf Teufel komm raus" zu optimieren, wenn man sich dann nicht mehr zurechtfindet. Hier gilt es stets abzuwägen.
Der Einfachheit halber mache ich bei unserem Projekt 31 weiter und lasse den Errorhandling-Code vorläufig weg. Wir können ihn später jederzeit mit Voodoo Coder wieder hinzufügen.
Eine Code-Sequenz, die sich in unserem Projekt mehrfach wiederholt, ist die Anzeige der Aufgaben:
lblAufgabe.Visible = True 'Aufgabe anzeigen txtErgebnis.Text = "" 'Textfeld löschen txtErgebnis.Visible = True 'Antwortfeld anzeigen Me.KeyPreview = True 'Tastencodes abfragen txtErgebnis.SetFocus 'Cursor ins Textfeld setzen
Egal ob Addition, Subtraktion, Multiplikation oder Division, die Befehlsfolge sieht immer gleich aus. Wir lagern sie daher in ein kleines Unterprogramm aus:
Private Sub AufgabeAnzeigen() lblAufgabe.Visible = True 'Aufgabe anzeigen txtErgebnis.Text = "" 'Textfeld löschen txtErgebnis.Visible = True 'Antwortfeld anzeigen Me.KeyPreview = True 'Tastencodes abfragen txtErgebnis.SetFocus 'Cursor ins Textfeld setzen End Sub
Die entsprechenden Stellen ersetzen wir durch kurze Aufrufe, z.B.:
Private Sub Addition() Dim summand1 As Integer, summand2 As Integer Summe summand1, summand2 lblAufgabe.Caption = Str$(summand1) & " +" & Str$(summand2) & " =" 'Aufgabe in Label schreiben AufgabeAnzeigen End Sub
Wenn wir das Projekt jetzt kompilieren, stellen wir hier fest, daß sich die Größe unserer EXE überhaupt nicht verändert hat. Und das obwohl wir doch viel weniger Codezeilen haben. Warum?
Es liegt einfach an unserem VB-Compiler. Je nach eingestellter Option optimiert VB unser Projekt beim Kompilieren auf möglichst kleinen oder möglichst schnellen Code. Bei kleinen Projekten wie unserem Mathe-Max macht das oft kaum oder gar keinen Unterschied, bei größeren Projekten kann es jedoch schon einen erheblichen Unterschied in der Dateigröße bzw. der Ausführungsgeschwindigkeit geben.
© Copyright 1998-2000 J.Behling
Weitergabe und Druck (auch in Teilen, mit Ausnahme von Privatgebrauch) ohne ausdrückliche Genehmigung der Autorin untersagt.