Allerlei zum Softwaretechnik - Praktikum 2005


Latest Updates

07.09.2005:
Hier gibt es ein Musterprojekt:
Programm und Handbuch als Paket APachisi.zip (die Bilddateien müssen wie in der Zipdatei im Unterverzeichnis "images" liegen !)
Dokumentation: APachisiWiki.zip


17.07.2005:
Bugfix in HTML-Hilfe-Doku: Nach Umstellung eines hilflosen Projekts auf Hilfe hat F1 nicht funktioniert.

27.06.2005:
HTML-Hilfe-Doku erweitert:
-Umstellung eines hilflosen Projekts auf Hilfe.
-Beispielprogramm: Hilfe-IDs in eigene Header-Datei verlegt damit sie auch im Programm verwendet werden können.

MFC-Schnipsel:
-Lösungsansatz für Pachisi-Problem "Auf Zielfeld steht eine eigene Figur -> wähle ich diese oder führe ich meinen Zug durch": Mittels einer Message eine Anfrage an die View schicken, diese zeigt Contextmenü an.

Abgaben

Beschreibung der Abgaben der Adressverwaltung
Abgaben für Pachisi: Pachisi-Abgaben

Gesammelte Informationen

Austausch eines MFC-Projekts

Ein Projekt enthält einen ganzen Haufen Dateien, die wir nicht brauchen wenn wir es irgendwo anders hin übertragen wollen (und ich schlage jeden der mir ein Projekt mit dem gesamten Debug-Ordner zumailt !).
Dies sind:
-Der komplette "Debug"-Unterorder
-Die Datei mit der Endung .ncb
-Die Datei mit der Endung .suo. Dies sind die benutzerspezifischen Einstellungen (diese Info mit Vorbehalt).
Benötigte Dateien:
-Natürlich alle .cpp und .h-Dateien
-Das gesamte "res"-Unterverzeichnis
-Datei mit der Endung .sln (dies ist die Projektmappe / Solution, ruhig mal mit einem Texteditor anschauen)
-Datei mit der Endung .vcproj (dies ist die Projektdatei, ebenfalls mal mit einem Texteditor anschauen)
-Die Readme.txt (obwohl die eigentlich nie benötigt/benutzt wird).
-Die Datei mit der Endung .rc (hier stehen die Definition unserer Oberflächen-Elemente, ebenfalls Texteditor-kompatibel).
-Die .reg-Datei (beispielsweise im MFCBasics-Beispiel).

Ihr wollt XP-Styles ?

XP-Styles sind, wenn alle Buttons rund und viel bunter sind. Dazu muss man im Code nichts ändern, sondern nur eine Datei in das Verzeichnis der exe kopieren. Diese Datei wird vom Assistenten mitgeliefert und liegt im "res"-Unverzeichnis. Wir nehmen also die Datei mit dem Namen "NAME_DER_EXE.manifest" und kopieren sie in das gleiche Verzeichnis wie die exe. Da der Anwendungsassistent scheinbar nicht der hellste ist, müssen wir den Dateinamen noch leicht ändern: "NAME_DER_EXE.exe.manifest". Schon ist die Welt viel bunter.

UML und so weiter

Hier zwei (eingescannte) Auszüge aus "UML für Dummies": "instanceof" und "extends"-Stereotypen: usecase.zip
Der "instanceof"-Operator gehört nicht zum UML2-Standard, d.h. alles schnell wieder vergessen !

Homepage des UML-Konsortiums: http://www.uml.org/
UML2-Standard: http://www.omg.org/technology/documents/modeling_spec_catalog.htm#UML

Überblick über OCL: Object Constraint Language

Beispiele

Beispiel 1: Minimale MFC-Anwendung.
Beispiel 2: FormView, Dialog und DocumentView-Architektur.
Rational-Einführung
Sequenzdiagramme mit Rational
Beispiel 3: Splitter
Beispiel 4: Bitmaps laden, Toolbar, CScrollView, GetLastError
Beispiel 5: HTML-basiertes Hilfesystem
MFC-Fundgrube (einige nützliche Kleinigkeiten)

Musterprojekt "Lehrveranstaltungsverwaltung"

Ein größeres Projekt, dessen Use-Case / Klassendiagramme komplett vorliegen.
Anforderungsdefinition
Use-Case-Beschreibung
Domänen-Klassendiagramm
Klassendiagramm



Version 1.6.0.0, Stand 07.09.2005
Historie:
1.1.0.0 (10.04.2005): Mehr Beispiele, Abgabe 1
1.2.0.0 (17.04.2005): Abgabe 2, Musterdoku
1.2.1.0 (21.04.2005): MFC-Schnipsel
1.3.0.0 (01.05.2005): Beispiel 4 (Bitmaps)
1.3.1.0 (05.05.2005): Auszüge aus "UML für Dummies"
1.3.1.1 (09.05.2005): Auszüge aus "UML für Dummies" ins PNG-Format umgewandelt
1.4.0.0 (17.05.2005): Pachisi-Abgabe 1
1.4.0.1 (22.05.2005): Dementi des instanceof-Operators, Links zur UML-Homepage
1.4.1.0 (26.05.2005): Link zur OCL-Seite
1.4.2.0 (31.05.2005): Unterverzeichnis "RationalTest" in "Rational" umbenannt. Link zu Sequenzdiagramm-Beispiel zugefügt.
1.4.3.0 (26.06.2005): Beispiel "HTML Help" zugefügt.
1.4.4.0 (27.06.2005): Last Updates: HTMLHelp, MFCSchnipsel
1.5.0.0 (03.08.2005): Endnoten
1.5.0.1 (06.08.2005): Endnoten Version 2
1.6.0.0 (07.09.2005): Musterprogramm