Lösungen erben: Unterschied zwischen den Versionen

Aus VBA-wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Ein vorhandene Lösung zu übernehmen kann Segen und Fluch zugleich sein, denn einerseits hat ein anderer Entwickler schon die ganze Entwicklungsarbeit geleist…“)
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Ein vorhandene Lösung zu übernehmen kann Segen und Fluch zugleich sein, denn einerseits hat ein anderer Entwickler schon die ganze Entwicklungsarbeit geleistet, aber andererseits können sich Erweiterungen und Verbesserungen an solchen Lösungen als sehr schwierig erweisen, wenn der ursprüngliche Entwickler zum Beispiel bei der Benennung von Variablen und Prozeduren keine klaren Angaben zum Einsatzzweck gemacht hat. Solange die vorhandene Lösung problemlos ihre Arbeit verrichtet, interessiert das wie und warum selten. Wenn jedoch eine Erweiterung der Funktionalität gewünscht wird oder gar Fehler entdeckt werden, müssen Sie sich gezwungenermaßen mit der Lösung wenigstens so weit auseinandersetzen, dass Sie die Aufgabe erfüllen können.
Ein vorhandene Lösung zu übernehmen kann Segen und Fluch zugleich sein, denn einerseits hat ein anderer Entwickler schon die ganze Entwicklungsarbeit geleistet, aber andererseits können sich Erweiterungen und Verbesserungen an solchen Lösungen als sehr schwierig erweisen, wenn der ursprüngliche Entwickler zum Beispiel bei der Benennung von Variablen und Prozeduren keine klaren Angaben zum Einsatzzweck gemacht hat.
 
Solange die vorhandene Lösung problemlos ihre Arbeit verrichtet, interessiert das wie und warum selten. Wenn jedoch eine Erweiterung der Funktionalität gewünscht wird oder gar Fehler entdeckt werden, müssen Sie sich gezwungenermaßen mit der Lösung wenigstens so weit auseinandersetzen, dass Sie die Aufgabe erfüllen können.


== 1. Projekt debuggen ==
== 1. Projekt debuggen ==


; Was tun? Verwenden Sie 'Debuggen', 'Kompilieren', um sicher zu gehen, dass keine bisher übersehenen Fehler im Code vorhanden sind. VBA weist nicht immer auf alle Fehler hin, wenn zum Beispiel die fehlerhafte Prozedur nicht verwendet wird.
; Was tun?
; Warum? Um unerwarteten Überraschungen vorzubeugen.
Verwenden Sie 'Debuggen', 'Kompilieren', um sicher zu gehen, dass keine bisher übersehenen Fehler im Code vorhanden sind. VBA weist nicht immer auf alle Fehler hin, wenn zum Beispiel die fehlerhafte Prozedur nicht verwendet wird.  
 
; Warum?
Um unerwarteten Überraschungen vorzubeugen.


== 2. Option Explicit ==
== 2. Option Explicit ==


; Was tun? Prüfen Sie, ob in jedem Modul 'Option Explicit' im Kopf des Moduls erscheint. Wenn es fehlt, schreiben Sie es selbst dort hinein.
; Was tun?
; Warum? 'Option Explicit' zwingt Sie dazu, noch nicht deklarierte Variablen ausdrücklich anzugeben. Somit werden Sie gezwungen, sich mit der Programmierung auseinanderzusetzen.
Prüfen Sie, ob in jedem Modul 'Option Explicit' im Kopf des Moduls erscheint. Wenn es fehlt, schreiben Sie es selbst dort hinein.
; Und dann? Verwenden Sie 'Debuggen', 'Kompilieren', um sicher zu gehen, dass wirklich alle Variablen ordentlich deklariert wurden.
 
; Warum?
'Option Explicit' zwingt Sie dazu, noch nicht deklarierte Variablen ausdrücklich anzugeben. Somit werden Sie gezwungen, sich mit der Programmierung auseinanderzusetzen.
 
; Und dann?
Verwenden Sie 'Debuggen', 'Kompilieren', um sicher zu gehen, dass wirklich alle Variablen ordentlich deklariert wurden.


== 3.a) Variablen passend benennen ==
== 3.a) Variablen passend benennen ==


; Was tun? Sehen Sie sich die einzelnen Prozeduren an und prüfen Sie, ob die gewählten Variablennamen dem Inhalt, den die Variablen aufnehmen sollen, gerecht werden. Wenn im ursprünglichen Code zum Beispiel eine Variable 'sn' verwendet wurde und Sie können nicht erkennen, ob es sich hierbei um den Nachnamen (SurName) des Kunden, oder um die Seriennummer (SerialNumber) eines Produktes handelt, ermitteln Sie den Zweck aus dem Zusammenhang heraus und benennen dann die Variable so um, dass sie den tatsächlichen Zweck verdeutlicht. Wenn Sie dann feststellen, dass manche Variablen für mehrere Inhalte verwendet wurden, legen Sie für jeden Einsatzzweck eine neue Variable an.
; Was tun?
; Warum? Sprechende Variablennamen erklären auch ohne Kommentare, welchen Zweck sie erfüllen.
Sehen Sie sich die einzelnen Prozeduren an und prüfen Sie, ob die gewählten Variablennamen dem Inhalt, den die Variablen aufnehmen sollen, gerecht werden.
 
Wenn im ursprünglichen Code zum Beispiel eine Variable 'sn' verwendet wurde und Sie können nicht erkennen, ob es sich hierbei um den Nachnamen (SurName) des Kunden, oder um die Seriennummer (SerialNumber) eines Produktes handelt, ermitteln Sie den Zweck aus dem Zusammenhang heraus und benennen dann die Variable so um, dass sie den tatsächlichen Zweck verdeutlicht.
 
Wenn Sie dann feststellen, dass manche Variablen für mehrere Inhalte verwendet wurden, legen Sie für jeden Einsatzzweck eine neue Variable an.
 
; Warum?
Sprechende Variablennamen erklären auch ohne Kommentare, welchen Zweck sie erfüllen.


== 3.b) Prozeduren passend benennen ==
== 3.b) Prozeduren passend benennen ==


; Was tun? Mithilfe der passenden Variablenbenennung haben Sie inzwischen ein gutes Verständnis dafür, was in den einzelnen Prozeduren geschieht und welchen Zweck sie erfüllen. Benennen Sie nun auch diese um, wenn aus dem bisherigen Namen nicht klar hervorgeht, welche Aufgabe sie erfüllen.
; Was tun?
; Warum? Sprechende Prozedurnamen erklären auch ohne Kommentare, welchen Zweck sie erfüllen.
Mithilfe der passenden Variablenbenennung haben Sie inzwischen ein gutes Verständnis dafür, was in den einzelnen Prozeduren geschieht und welchen Zweck sie erfüllen. Benennen Sie nun auch diese um, wenn aus dem bisherigen Namen nicht klar hervorgeht, welche Aufgabe sie erfüllen.
 
; Warum?
Sprechende Prozedurnamen erklären auch ohne Kommentare, welchen Zweck sie erfüllen.


== Und dann ... ==
== Und dann ... ==


Nun sollten Sie einen ziemlich klaren Überblick darüber haben, wie und warum die bisherige Lösung funktioniert hat. Darauf basierend können Sie viel klarer erkennen, wo Sie wie eingreifen müssen, um die gewünschten Erweiterungen bzw. die Verbesserungen vornehmen zu können.
Nun sollten Sie einen ziemlich klaren Überblick darüber haben, wie und warum die bisherige Lösung funktioniert hat. Darauf basierend können Sie viel klarer erkennen, wo Sie wie eingreifen müssen, um die gewünschten Erweiterungen bzw. die Verbesserungen vornehmen zu können.

Version vom 10. Oktober 2018, 16:37 Uhr

Ein vorhandene Lösung zu übernehmen kann Segen und Fluch zugleich sein, denn einerseits hat ein anderer Entwickler schon die ganze Entwicklungsarbeit geleistet, aber andererseits können sich Erweiterungen und Verbesserungen an solchen Lösungen als sehr schwierig erweisen, wenn der ursprüngliche Entwickler zum Beispiel bei der Benennung von Variablen und Prozeduren keine klaren Angaben zum Einsatzzweck gemacht hat.

Solange die vorhandene Lösung problemlos ihre Arbeit verrichtet, interessiert das wie und warum selten. Wenn jedoch eine Erweiterung der Funktionalität gewünscht wird oder gar Fehler entdeckt werden, müssen Sie sich gezwungenermaßen mit der Lösung wenigstens so weit auseinandersetzen, dass Sie die Aufgabe erfüllen können.

1. Projekt debuggen

Was tun?

Verwenden Sie 'Debuggen', 'Kompilieren', um sicher zu gehen, dass keine bisher übersehenen Fehler im Code vorhanden sind. VBA weist nicht immer auf alle Fehler hin, wenn zum Beispiel die fehlerhafte Prozedur nicht verwendet wird.

Warum?

Um unerwarteten Überraschungen vorzubeugen.

2. Option Explicit

Was tun?

Prüfen Sie, ob in jedem Modul 'Option Explicit' im Kopf des Moduls erscheint. Wenn es fehlt, schreiben Sie es selbst dort hinein.

Warum?

'Option Explicit' zwingt Sie dazu, noch nicht deklarierte Variablen ausdrücklich anzugeben. Somit werden Sie gezwungen, sich mit der Programmierung auseinanderzusetzen.

Und dann?

Verwenden Sie 'Debuggen', 'Kompilieren', um sicher zu gehen, dass wirklich alle Variablen ordentlich deklariert wurden.

3.a) Variablen passend benennen

Was tun?

Sehen Sie sich die einzelnen Prozeduren an und prüfen Sie, ob die gewählten Variablennamen dem Inhalt, den die Variablen aufnehmen sollen, gerecht werden.

Wenn im ursprünglichen Code zum Beispiel eine Variable 'sn' verwendet wurde und Sie können nicht erkennen, ob es sich hierbei um den Nachnamen (SurName) des Kunden, oder um die Seriennummer (SerialNumber) eines Produktes handelt, ermitteln Sie den Zweck aus dem Zusammenhang heraus und benennen dann die Variable so um, dass sie den tatsächlichen Zweck verdeutlicht.

Wenn Sie dann feststellen, dass manche Variablen für mehrere Inhalte verwendet wurden, legen Sie für jeden Einsatzzweck eine neue Variable an.

Warum?

Sprechende Variablennamen erklären auch ohne Kommentare, welchen Zweck sie erfüllen.

3.b) Prozeduren passend benennen

Was tun?

Mithilfe der passenden Variablenbenennung haben Sie inzwischen ein gutes Verständnis dafür, was in den einzelnen Prozeduren geschieht und welchen Zweck sie erfüllen. Benennen Sie nun auch diese um, wenn aus dem bisherigen Namen nicht klar hervorgeht, welche Aufgabe sie erfüllen.

Warum?

Sprechende Prozedurnamen erklären auch ohne Kommentare, welchen Zweck sie erfüllen.

Und dann ...

Nun sollten Sie einen ziemlich klaren Überblick darüber haben, wie und warum die bisherige Lösung funktioniert hat. Darauf basierend können Sie viel klarer erkennen, wo Sie wie eingreifen müssen, um die gewünschten Erweiterungen bzw. die Verbesserungen vornehmen zu können.