Beim Prinzip "Teile und Herrsche" wird ein Problem so lange in kleinere Teilprobleme zerlegt, bis diese beherrschbar sind. So schreibt es Wikipedia. Was dieses Prinzip mit der Umsetzung von Better Access PivotTable zu tun hat, erklärt dieser Beitrag.
Ich habe meine Lehren aus dem Schwester-Projekt "Better Access Charts" gezogen. Dort habe ich alle Eigenschaften und Methoden in einer großen Klasse untergerbacht. Am Anfang war das noch ganz übersichtlich. Doch mit der Zeit haben sich dort 47 Eigenschaften angesammelt. Das wird irgendwann übersichtlich.
Damit mir das nicht auch in diesem Projekt passiert, habe ich mich entschlossen hier gleich von Anfang an die Aufteilung in verschiedene Klassen umzusetzen. Dazu habe ich im aktuellen Release die bisherige Funktionalität in drei Klassenmodule und ein Standardmodul aufgeteilt.
Damit ändert sich jetzt der Code, der notwendig ist, um ein PivotChart zu erstellen, nur leicht:
In Zeile 1 wird eine Instanz der Klasse BAPT_PivotTable deklariert. Alle Klassen des Projekt haben den Präfix "BAPT_".
In Zeile 2 wird eine neue Instanz erstellt. Hier wird gleich das Webbrowser-Steuerelement als Parameter mit übergeben. Das spart die gesonderte Zuweisung.
In den Zeile 3 bis 5 werden die wesentlichen Eigenschaften eingestellt.
In der Zeile 6 wird die PivotTabelle erstellt.
Insgesamt ist der Code jetzt eine Zeile kürzer geworden. Hat sich dafür der ganze Aufwand gelohnt?
Der Aufwand wird sich spätestens dann lohnen, wenn weitere Eigenschaften hinzukommen. Dann können wir über Unterklassen die Möglichkeiten von Intellisense nutzen und das Code beleibt einfach und übersichtlich.
Die aktuelle Version von Better Access PivotTable steht wie immer auf GitHub bereit:
https://github.com/team-moeller/better-access-pivottable
Keine Kommentare:
Kommentar veröffentlichen