class: center, middle, inverse # Software Engineering Quiz ## Fun for the whole family? ### (probably not) --- class: center, middle ## Warum nutzt man Vererbung? --- class: center, middle ## generalisierung / spezialisierung --- class: center, middle ## Was sind Nachteile der Vererbung? --- class: center, middle ## Kann in vielen klassen ausarten ## Eine Klasse in C# kann nur von einer anderen Klasse erben --- class: center, middle ## Was bedeutet Polymorphie? --- class: center, middle ## Vererbung --- class: center, middle ## Was bedeuted der scope `protected`? --- class: center, middle ## Kann nur innerhalb der eigenen Klasse und allen davon erbenden Klassen benutzt werden --- class: center, middle ## Was bedeuted der scope `private`? --- class: center, middle ## Kann nur innerhalb dieser Klasse genutzt werden --- class: center, middle ## Was bedeuted das keyword `sealed` bei einer methode? --- class: center, middle ## Eine Klasse darf Methoden der Mutterklasse nur überladen, wenn diese nicht sealed sind (Polymorphie wird verhindert) --- class: center, middle ## Was bedeuted das keyword `abstract` bei einer klasse? --- class: center, middle ## Von einer abstrakten Klasse kann keine Instanz erzeugt werden --- class: center, middle ## Nenne ein Beispiel für eine abstrakte Klasse? --- class: center, middle ## Subject Klasse im Observer Entwurfsmuster --- class: center, middle ## Was bedeuted das keyword `abstract` bei einer Methode? --- class: center, middle ## Gab es mal in irgendeiner Klausur innerhalb einer abstrakten Klasse ## Die Methode hat nur eine Signatur, keine Implementierung --- class: center, middle ## Was muss man beachten, wenn man eine abstrakte Methode von einer vererbten Klasse implementiert? --- class: center, middle ## Sie brauch das keyword `override` --- class: center, middle ## Was bedeuted das keyword `interface` bei einer Klasse? --- class: center, middle ## Ein Interface enthält nur Signaturen von Methoden ## Von einem Interface kann man keine Instanz erzeugen --- class: center, middle ## Wann nutzt man das Singleton Entwurfsmuster? --- class: center, middle ## Wenn man von einer Klasse nur eine Instanz haben darf ## z.b. Dateioperationen, Datenbankverbindungen --- class: center, middle ## Warum kann man beim Singleton Entwurfsmuster nur eine Instanz einer Klasse erzeugen? --- class: center, middle ## Konstruktor ist private, mit new lässt sich keine Instanz erzeugen ## Eine `GetInstance()` Methode liefert eine Instanz von sich selbst zurück, sofern noch keine existiert ## Die Instanz wird inneralb der Klasse gespeichert ## Ist blöd mit Parametern --- class: center, middle ## Wann nutzt man das Observer Pattern? --- class: center, middle ## Wenn man mehrere Objekte hat, die bei einem Event eine Aktion ausführen sollen --- class: center, middle ## Was ist der Unterschied zwischen dem State- und dem Strategy Entwurfsmuster? --- ## Beim Strategy Pattern wird die Strategie von ausserhalb gesetzt ## Beim State Pattern bestimmt ein State welcher State folgt --- class: center, middle ## Welches zeichen nutzt man für das `protected` keyword in UML? --- class: center, middle ## # --- class: center, middle ## Welches Zeichen nutzt man für das Keyword `public` in UML? --- class: center, middle ## + --- class: center, middle ## Welches Zeichen nutzt man für das keyword `private` in UML? --- class: center, middle ## - --- class: center, middle ## Was zeichnet man in einem Use Case Diagram? --- class: center, middle ## Einen konkreten Anwendungsfall --- class: center,middle ## Wie kann man den Konstruktur der Mutterklasse aufrufen? --- class: center,middle ## Mit `: base()` hinter dem eigentlichen Konstruktur