Softwarearchitektur

24/01/2008 - 22:19 von Markus Abele | Report spam
Hallo!

Ich habe momentan richtig Trubel mit meinem Chef, da meine bisherige
Software nicht
komponentenbasiert aufgebaut ist.

IST Zustand
Anwendung1.exe MFC
Klasse1.h ; cpp
Klasse2.h ; cpp
Klasse3.h ; cpp
Klasse4.h ; cpp
Klasse5.h ; cpp
Vorteile schnelle Änderung
Nachteil - Code mehrfach vorhanden

Anwendung2.exe MFC
Klasse1.h ; cpp
Klasse2a.h ; cpp
Klasse3.h ; cpp
Klasse4b.h ; cpp
Klasse5.h ; cpp
Vorteile schnelle Änderung
Nachteil - Code mehrfach vorhanden

Anwendung3.exe MFC
Klasse1.h ; cpp
Klasse2.h ; cpp
Klasse3.h ; cpp
Klasse4c.h ; cpp
Klasse5.h ; cpp
Vorteile schnelle Änderung
Nachteil - Code mehrfach vorhanden
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Meine neue Idee mit C#
hier kann man doch erst so richtig binàre Komponenten erstellen,
das ging doch früher gar nicht, oder?
Nachteil aufgrund von Schnittstellen, dauern Änderungen lànger, korrekt?
Vorteil Code einmal vorhanden

Mein Chef will das nicht so recht glauben ; -) Gibt es so eine History
über Softwarearchitektur?

Ich sage z.B.

Basisklasse SerialPort
Barcodescanner : public SerialPort
Drucker : public SerialPort
Achse: public SerialPort

Mein Chef sagt alles falsch, deshalb ist alles so schlecht
Keine Basisklasse
* Barcodescanner
Objekt SeruialPort
* Drucker
Objekt SeruialPort
* Achse
Objekt SeruialPort

Was ist richtig?

Was mich halt nervt, es gibt jetzt viele kundenspezifische Anwendungen,
weil alles schnell gehen musste.
Jetzt bin ich an allem Schuld. (das ging nicht so einfach mit der MFC, wie
unter C# jetzt)


Einfach eine neutrale Antwort.

Viele Grüße Markus
 

Lesen sie die antworten

#1 Samaschke, Karsten
25/01/2008 - 09:11 | Warnen spam
Markus Abele schrieb:

Nachteil aufgrund von Schnittstellen, dauern Änderungen lànger,
korrekt?



Nö, warum? Du hast ein Interface, eine Basisklasse oder was auch immer
und implementierst Deine Änderungen in einer Klasse, die davon erbt bzw.
das Interface implementiert. Ja, natürlich musst Du *einmal* das
Interface definieren, aber danach...? Nö, da dauert nix lànger.

Vorteil Code einmal vorhanden



Code 1x vorhanden, durch Basisklasse / Interface bessere Trennung von
Definition und Implementierung (Contract-First-Design), bessere
Wartbarkeit (Code nur 1x da, Änderungen können in eigener
Implementierung umgesetzt werden und anschließend wird die alte
Implementierung durch die neue ersetzt, ohne dass die Applikation neu
erstellt werden müsste), PlugIn-Fàhigkeit, ...

Ganz nebenbei gab es solche Möglichkeiten auch schon bei "klassischem"
C++ (Bibliotheken). Das sind also nicht mal neue Paradigmen, sondern
allgemein gültiges Wissen in der Softwaretechnologie seit mindestens
fünfzehn Jahren. ;-)

Mit freundlichen Gruessen / Best regards,

Karsten Samaschke
IT-Consulting, IT-Development, IT-Training
Homepage: http://www.ksamaschke.de
Blog: http://www.karsan.de
Foren: http://www.aspxperts.de

Sent via MacBook / Windows Vista

Ähnliche fragen