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