3 - J (mae)

3 - J (mae)

3 - J (mae)


Set of flashcards Details

Flashcards 58
Language Deutsch
Category Riddles and Jokes
Level Primary School
Created / Updated 04.01.2014 / 15.01.2014
Weblink
https://card2brain.ch/box/3_j_mae
Embed
<iframe src="https://card2brain.ch/box/3_j_mae/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Laufzeitsicht:

Zeigt das Verhalten des Systems (oder von Bausteinen). Zeigt wie zur Laufzeit die Instanzen der Bausteine des Systems miteinander und gegen aussen kommunizieren. Für alle wesentlichen UseCases sollte diese Sicht erstellt werden Folie

Technische Konzepte

Persistenz, Gestaltung der Benutzeroberflächen, Konzept für Fehlerbehandlung, Verteilung, Einsatz von Patterns, Frameworks

DDD

domain driven development

komplexe objektorientierte software genau einer Anwendungsdomäne anpassen

denn Software muss die Sprache der Menschen sprechen und nicht Menschen die Sprache der Software lernen. Domain Driven Design schafft genau dafür die Grundlage, indem eine gemeinsame Syntax – in der Regel die der Fachabteilung – als „Muttersprache“ für alle Softwareentwicklungsprozesse etabliert wird.

  • Der Schwerpunkt des Softwaredesigns liegt auf der Fachlichkeit und der Fachlogik.
  • Der Entwurf komplexer fachlicher Zusammenhänge sollte auf einem Modell der Anwendungsdomäne, dem Fachmodell basieren.

architekturmuster:

Domain Model

Schichten

Pipes und Filter

Repositories (Blackboard)

Broker (Makler)

Model-View-Controll

Broker (Makler)

Das Broker-Muster wird verwendet um die Zusammenarbeit in verteilten System zu koordinieren.

Ein Broker ist dabei verantwortlich für den Ablauf der Kommunikation verteilter Systeme sowie der technischen Übertragen von Anfragen, Ergebnissen und Ausnahmen.

Model-View-Controll

Model: Enthält die fachlichen Bestandteile des Systems, den sogenannten Anwendungskern. Das Model kapselt alle fachlichen Daten und Dienste. Die Controller (s. u.) rufen diese Dienste nach Anforderung durch Anwender auf.

View: Zeigen Informationen (grafisch) für die Benutzer an

Controller: Nehmen Benutzereingaben oder -events an und leiten sie an passende Model- oder View-Bestandteile weiter.

Arten von Design Pattern

Erzeugungs-Muster, Creational-Pattern

Struktur-Muster, Structural-Pattern

Verhaltens-Muster, Behavioral-Pattern

 

Singleton-Pattern

GIBT PROBLEME bei Multithreading!!!

Das Singleton Entwurfsmuster sorgt dafür, dass es von einer Klasse nur eine einzige Instanz gibt und diese global zugänglich ist.

Dafür wird der Konstruktur privat deklariert. Nun kann einzig der Singletoncode selbst das Singleton instanziieren.

Weiterhin definiert die Singletonklasse eine global verfügbare Methode z.B. getInstance(), in der diese einzigartige Singletoninstanz zurückgegeben wird.

02 Abstract Factory

Biete eine Schnittstelle zum Erzeugen von Familien verwandter oder voneinander abhängiger Objekte, ohne ihre konkreten Klassen zu benennen

verschiedene methoden, z.B createTier, createPflanze, in interface definiert..

verschiedene klassen können interface implementieren... Tier = elefant, Pflanze = Palme 

03 Facory Method

Definiere eine Klassenschnittstelle mit Operationen zum Erzeugen eines Objekts, aber lasse Unterklassen entscheiden, von welcher Klasse das zu erzeugende Objekt ist.

Fabrikmethoden ermöglichen es einer Klasse, die Erzeugung von Objekten an Unterklassen zu delegieren.

 

04 Composite Pattern

Das Composite Entwurfsmuster ermöglicht es, eine verschachtelte (Baum)Struktur einheitlich zu behandeln, unabhängig davon, ob es sich um ein atomares Element oder um ein Behälter für weitere Elemente handelt. Der Client kann elegant mit der Struktur arbeiten.

08 Facade

Bietet eine einheitliche Schnittstelle (die "Fassade") anstatt einer Menge von Schnittstellen eines Subsystems. Die Fassadenklasse definiert eine "zentrale" Schnittstelle, welche die Benutzung des Subsystems vereinfacht.

09 Proxy

Kontrolliere den Zugriff auf ein Objekt mit Hilfe eines vorgelagerten Stellvertreterobjekts.

Observer = listener

Man verwendet einen Subjekt und einen Beobachter. Ein Subjekt kann eine beliebige Anzahl Beobachter "besitzen" (besser gesagt: Die Beobachter melden sich beim Subjekt an). Alle angemeldeten Beobachter werden (der Reihe nach!) benachrichtigt, wenn sich das Subjekt ändert. Als Reaktion auf diese Benachrichtigung synchronisiert sich jeder Beobachter mit dem Zustand des Subjekts. Das heisst jeder Beobachter frägt den (neuen) Zustand mit Hilfe von Anfragen an das Subjekt selber ab.

Entwurfsprinzipien

Einfachheit vor Allgemeinverwendbarkeit

Prinzip der minimalen Verwunderung (Erstaunliche Lösungen sind meist schwer verständlich)

Vermeiden Sie Wiederholung

Prinzip der einzelnen Verantwortlichkeit (Jede Klasse sollte eine strikt abgegrenzte Verantwortlichkeit besitzen)

Offen-Geschlossen-Prinzip (Software-Komponenten sollten offen für Erweiterungen, aber geschlossen für Änderungen sein)

Prinzip der gemeinsamen Wiederverwendung (Die Klassen innerhalb eines Pakets sollten gemeinsam wiederverwendet werden)

Keine zirkulären Abhängigkeiten

Prinzip der stabilen Abhängigkeiten (Führen Sie Abhängigkeiten möglichst in Richtung stabiler Bestandteile ein. Vermeiden Sie Abhängigkeiten von volatilen)

Liskov’sches Substitutionsprinzip (Unterklassen sollen anstelle ihrer Oberklassen einsetzbar sein, nichts überschreiben)

Prinzip der Umkehrung von Abhängigkeiten

Prinzip der Abtrennung von Schnittstellen

Prinzip solider Annahmen

Konvention vor Konfiguration

Was sind Design Pattern

Wiederverwendbare Lösungen

Eine Anzahl Regeln, die beschreiben, wie bestimmte Aufgaben im Gebiet der Softwareentwicklung zu lösen sind

Beziehen sich auf ein oft auftretendes Design-Problem

Identifizieren und spezifizieren Abstraktionen die, von der Komplexität her, über den Klassen, Instanzen oder Komponeneten liegen

Aufbau von Design Pattern

1. Der Name des Muster

2. Der Zweck des Musters: Das Problem, welches das Muster löst.

3. Wie man dieses Problem lösen kann

4. Die Einschränkungen und Bedingungen, die man beachten muss um das Problem zu lösen

Arten von Design Pattern

Creational

Abstract Factory, Factory Method, Singleton

Structural:

Composite, Facade, Proxy

Behavioral:

Observer