C++، UML و الگوهای طراحی: مبانی و کاربرد شیءگرایی
C++, UML und Design Patterns: Grundlagen und Praxis der Objektorientierung
معرفی کتاب «C++، UML و الگوهای طراحی: مبانی و کاربرد شیءگرایی» (با عنوان لاتین C++, UML und Design Patterns: Grundlagen und Praxis der Objektorientierung) نوشتهٔ Harald Störrle، منتشرشده توسط نشر Addison Wesley. ein Imprint von Pearson Deutschland GmbH در سال 2005. این کتاب در فرمت pdf، زبان آلمانی ارائه شده است.
Objektorientiert Denken Sptestens mit dem Erfolg von Java ist OOP, objektorientierte Programmierung, geradezu ein Reizwort geworden. Hinter diesem Konzept steckt eine andere Art von Programmentwicklung, die einen Programmablauf nicht als Prozedur, sondern eher als ein Zusammenspiel von Segmenten und Teilen begreift. OOP soll eine "natrlicherere" Programmentwicklung ermglichen und komplexe, eventuell sogar verteilte Anwendungen schon bei der Entwicklung strker an die Lebensrealitt angleichen. Sprachen wie C++ oder Smalltalk sind Vorlufer von Java, da sich an diese Sprachen anlehnt. Allen drei ist gemein, da nicht nur Syntax und Befehlssatz verstanden werden muss, sondern vor allen Dingen ein Konzept und eine spezielle Art der Lsungsstrategie -- und diesem Problemfeld sucht das vorliegende Handbuch vierer erfahrener OOP-Entwickler Rechnung zu tragen. Entwurfsmuster ist ein bereits lteres, aber oft empfohlenes Handbuch fr die 20 wichtigsten Problemlsungsstrategieen in der objektorientierten Softwareentwicklung. Als lesenswertes Handbuch in Exploring Java empfohlen, behandeln die Autoren das Thema der wiederverwendbaren Software. Nicht jeder Entwickler soll das Rad neu erfinden -- aber woher soll ein unerfahrener Entwickler eine systematische, bewhrte Lsungsstrategie kennen, wenn diese sich als Erfahrungswissen weiterverbreitet? Diesem Umstand sucht das Handbuch Rechnung zu tragen. Systematisch gegliedert stellen die vier Entwickler nicht bliche, mathematische Algorithmen vor, die Programmierer beherrschen sollten, sondern unterschiedliche Konzepte von objektorientierten Wie programmiere ich z.B. die Einkapselung von Befehlen in Objekte oder erstelle einen Satz von Algorithmus-Objekten, auf die beliebig zugegriffen werden kann. 23 solcher und hnlicher Probleme werden geordnet vorgestellt. Schrittweise wird das Entwurfsmuster errtert, sein Verwendungszweck, aber auch seine Grenzen dargestellt und schliesslich anhand eines Codebeispiels in C++ oder Smalltalk anschaulicher gemacht. "Wie lse ich...?" -- Die Antwort auf die Fragen, die so beginnen, ist Leitmotiv fr das Handbuch. Gleichermaen zum Nachschlagen einer konkreten Realisierungsidee geeignet wie zuInspiration, welche Mglichkeiten schon vorhanden und durchdacht sind. Das gut lesbar geschriebene Handbuch richtet sich an Entwickler mit soliden Grundkenntnissen in einer objektorientierterten Sprache und einer gewissen vertrautheit mit Konzepten wie Vererbung oder Polymorphie. Die Grundidee von OOP wird als bekannt vorrausgesetzt. --Susanne Schmidt UML 2 erfolgreich einsetzen - Einführung und Referenz......Page 3 4 UML im Projekt......Page 5 6 Klassen und Beziehungen......Page 6 7 Architektur und Komponenten......Page 7 11 Zustandsautomaten......Page 8 13 Interaktionen......Page 9 B UML-Diagramme und -Modelle......Page 10 Index......Page 11 Vorwort......Page 13 Teil I Einführung......Page 15 1.1 Zielgruppe......Page 17 1.2 Konventionen......Page 18 1.3 Abgrenzung......Page 20 1.4 Aufbau dieses Buches......Page 21 2.2 Bedeutung und Beitrag der UML......Page 23 2.3 Der Aufbau der UML......Page 25 2.4 Neuerungen in UML 2.0......Page 29 3.1 Der Software-Lebenszyklus......Page 31 3.2 Die Rolle der Modellierung......Page 33 3.4 Auswahl passender Modelle und Diagramme......Page 34 3.5 Einsatzbedingungen für Diagrammtypen......Page 35 4 UML im Projekt......Page 37 4.2 Analyse......Page 38 4.3 Entwurf......Page 39 4.5 Integration......Page 40 4.7 Betrieb und Wartung......Page 41 4.8 Renovierung und Stilllegung......Page 42 5.2 Evaluierung von Werkzeugen......Page 45 5.2.2 Detailbetrachtung......Page 46 5.3 UML 2 Abdeckung......Page 50 Teil II Struktur......Page 53 6.1 Einführung......Page 55 6.1.1 Arten von Klassen......Page 56 6.2 Analyse-Klassendiagramm......Page 57 6.2.2 Beziehungen......Page 58 6.2.3 Attribute......Page 60 6.2.4 Komposition......Page 63 6.2.5 Operationen (Methoden)......Page 64 6.2.6 Vererbung......Page 66 6.3 Entwurfs-Klassendiagramm......Page 69 6.3.1 Attribute......Page 70 6.3.3 Operationen (Methoden)......Page 74 6.3.4 Abstrakte Klassen......Page 75 6.3.6 Schnittstellen......Page 76 6.4 Taxonomie......Page 78 6.5 Kompositionshierarchie......Page 80 6.6 Objektdiagramm......Page 83 6.7 Rollenmodellierung......Page 85 6.8 Klasseninventar......Page 89 6.9.1 Datentypen......Page 90 6.9.2 Template-Klassen......Page 91 6.9.3 Aggregation......Page 92 6.9.4 Profilierung von Implementations-Klassendiagrammen......Page 93 6.9.5 Interpretation als Java-Programm......Page 94 6.9.6 Interpretation als Datenbankmodell......Page 99 6.10.1 Kapitelzusammenfassung......Page 104 6.10.2 Entscheidungshilfe......Page 105 7.1 Kontextdiagramm......Page 107 7.2 Facharchitekturdiagramm......Page 109 7.3 Montagediagramme......Page 111 7.3.1 System-Montagediagramme......Page 112 7.3.2 Objekt-Montagediagramm......Page 117 7.3.3 Interpretation von Anschlüssen und Verbindern in Java......Page 122 7.4.1 Kapitelzusammenfassung......Page 124 7.5 Kollaborationen......Page 126 7.5.1 Entwurfsmuster......Page 127 7.5.2 Architekturstil......Page 128 7.5.3 Kontextkollaboration......Page 129 7.6.1 Kapitelzusammenfassung......Page 131 7.7.1 Pakete......Page 132 7.7.3 Import......Page 133 7.7.4 Verschmelzung......Page 138 7.8.1 Komponenten......Page 139 7.8.2 Arten von Komponenten......Page 140 7.8.3 Verbinder......Page 142 7.8.4 Verhaltenskonformität......Page 144 7.9 Installation und Verteilung......Page 146 7.9.1 Systemstrukturdiagramm......Page 149 7.9.2 Verteilungsdiagramm......Page 153 7.10.2 Entscheidungshilfe......Page 155 8.1 Arten von Anforderungen......Page 157 8.2 Bedeutung nichtfunktionaler Anforderungen......Page 159 8.3 Nichtfunktionale Anforderungen in der UML......Page 160 9.1 Typen......Page 163 9.2.2 Logik, Arithmetik......Page 165 9.3 Invarianten......Page 167 9.3.2 Kollektionsoperationen......Page 168 9.3.3 Initialwerte, abgeleitete Werte......Page 169 9.4 Vor- und Nachbedingungen......Page 170 Teil III Verhalten......Page 173 10.1 Arten von Funktionalität......Page 175 10.2 Prozessinventar......Page 176 10.3 Textuelle Ablaufbeschreibung......Page 178 10.4 Prozesstabelle......Page 179 10.5 Nutzfallinventar......Page 186 10.6.1 Inklusion......Page 188 10.6.2 Erweiterung......Page 189 10.7 Nutzfalltabelle......Page 190 10.8 (Klassische) Nutzfalldiagramme......Page 193 10.10.1 Kapitelzusammenfassung......Page 194 10.10.2 Entscheidungshilfe......Page 196 11.1 Semantische Grundbegriffe......Page 197 11.2 Objektlebenszyklus......Page 198 11.3 Nutzfalllebenszyklus......Page 203 11.4 Protokollrolle und Protokoll......Page 206 11.5 Gedächtniszustände......Page 210 11.5.1 Aufspaltungs- und Synchronisationsknoten......Page 212 11.6 Systemverhalten und Steuerungsautomat......Page 213 11.7 Aufruf und Verfeinerung von Zustandsautomaten......Page 217 11.8 Dialogablauf......Page 219 11.9 Zustandstabelle......Page 220 11.10.1 Kapitelzusammenfassung......Page 221 11.10.2 Entscheidungshilfe......Page 222 12 Aktivitäten......Page 223 12.2 Prozessablauf......Page 224 12.3 Nutzfallablauf......Page 228 12.4 Datenfluss......Page 229 12.4.2 Objektflussknoten......Page 233 12.4.3 Objektflusskanten......Page 235 12.5 Dienstkomponenten......Page 236 12.5.1 Pins und Parametermengen......Page 237 12.5.2 Verknüpfung von Dienstkomponenten......Page 239 12.6.1 Sprünge......Page 241 12.6.2 Ausnahmen......Page 242 12.6.3 Strukturierte Knoten......Page 246 12.6.4 Auffaltungsbereiche......Page 248 12.7.2 Softwareprozesse......Page 251 12.8.1 Kapitelzusammenfassung......Page 253 12.8.2 Entscheidungshilfe......Page 254 13.1 Semantische Grundbegriffe......Page 255 13.2.1 Komplementäre Darstellungen......Page 256 13.2.2 Interaktionen als Folgen von Ereignisvorkommnissen......Page 259 13.2.3 Aktivierung und Nachrichtentypen......Page 260 13.2.4 Musterinteraktionen......Page 263 13.3 Kontextinteraktionen......Page 264 13.3.1 Tabellendarstellung......Page 265 13.4 Interaktionsoperatoren......Page 266 13.4.2 Interaktionsvorkommnisse: der Operator......Page 267 und......Page 269 13.4.4 Textuelle Darstellung von Interaktionen......Page 270 und......Page 271 und......Page 273 und......Page 276 13.4.8 Ungültige Abläufe: Negation und Zusicherung......Page 278 13.5 Testfälle......Page 280 13.6 Protokollinteraktionen......Page 282 13.8.1 Kapitelzusammenfassung......Page 285 13.8.2 Entscheidungshilfe......Page 287 Teil IV Anhänge......Page 289 A.1.2 Klassendiagramme 1 – Klassen und Objekte......Page 291 A.1.3 Klassendiagramme 2 – ungerichtete Beziehungen......Page 293 A.1.4 Klassendiagramme 3 – gerichtete Beziehungen......Page 294 A.1.5 Montagediagramme......Page 295 A.1.6 Paketdiagramme......Page 296 A.1.7 Verteilungsdiagramme......Page 297 A.1.8 Nutzfalldiagramme......Page 298 A.1.9 Zustandsdiagramme......Page 299 A.1.10 Aktivitätsdiagramme......Page 302 A.1.11 Interaktionsdiagramme......Page 305 Klassen und Assoziationen......Page 306 Interaktionen......Page 307 A.4 Namen......Page 308 Prozesse, Ereignisse......Page 309 Klassen, Attribute, Pakete, Komponenten......Page 310 A.5 Layout......Page 311 Leserichtung beachten......Page 312 Gleiches gleich darstellen......Page 313 B UML-Diagramme und -Modelle......Page 315 Klassendiagramme......Page 316 Architekturdiagramme......Page 318 Kollaborationen......Page 319 Installationsdiagramme......Page 320 Nutzfalldiagramme......Page 321 Zustandsautomaten......Page 323 Aktivitätsdiagramme......Page 325 Interaktionsdiagramme......Page 327 C.1 Stereotype......Page 329 C.3 Profile......Page 330 D UML-Metamodell......Page 331 E Glossar......Page 335 F XMI......Page 347 G.1 Der Standard......Page 349 G.2 Das Netz......Page 350 G.3 Die Gesellschaft für Informatik......Page 351 H CD-Inhalt......Page 353 Literaturverzeichnis......Page 355 A......Page 367 C......Page 368 E......Page 369 I......Page 370 M......Page 371 P......Page 372 S......Page 373 T......Page 374 Z......Page 375 Ins Internet: Weitere Infos zum Buch, Downloads, etc.......Page 0 © Copyright......Page 377
دانلود کتاب C++، UML و الگوهای طراحی: مبانی و کاربرد شیءگرایی