Tutorium Softwaretechnik I

Ähnliche Dokumente
Tutorium Softwaretechnik I

Überblick FBC SNW Zusammenfassung. Entwurfsmuster. Eine Einführung. Botond Draskoczy. Marcus Vitruvius Pollio

Inhaltsverzeichnis. Vorwort Geleitwort von Grady Booch Einleitung... 23

Structural Patterns. B. Sc. Andreas Meißner

Entwurfsprinzip. Entwurfsprinzip

Entwurfsmuster Entkopplungs-, Varianten- und Zustandsmuster

Tutorium Softwaretechnik I

Behavioral Patterns. Seminar Software-Entwurf WS 04/05. Przemyslaw Dul

Design Patterns II. Der Design Muster Katalog. Prof. Dr. Nikolaus Wulff

Entwurfsmuster in Java

Matthias Geirhos. Entwurfsmuster. Das umfassende Handbuch. Rheinwerk. Computing

Entwurfsmuster Entkopplungs-, Varianten- und Zustandsmuster

Memory Models Frederik Zipp

Entwurfsmuster Design Patterns by Erich Gamma et al.

Software-Architektur. Design Patterns. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München

Entwurfsmuster. Tutorium 7 iloveswt.de Fabian I. Miltenberger INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD)

Entwurfsmuster Martin Fesser 00IN

3. Entwurfsmuster zur Entkopplung von Modulen

Design Patterns. (Software-Architektur) Prof. Dr. Oliver Braun. Letzte Änderung: :12. Design Patterns 1/26

Software Engineering II (IB) Design Patterns

Software Engineering II (IB) Design Patterns

Vorlesung Programmieren

Design Patterns. OO-GetTogether. Volker Michels

const Zwei Schlüsselwörter bei der Deklaration von Variablen und Member-Funktionen haben wir noch nicht behandelt: const und static.

Entwurfsmuster (Design Patterns)

Universität Bremen. Entwurfsmuster. Thomas Röfer. Wettbewerb Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster

Software-Architektur Design Patterns

Lukas Klich. Projektgruppe SHUTTLE. Seminar: Entwurfsmuster Lukas Klich/Projektgruppe SHUTTLE Seite: 1. Entwurfsmuster

Design-Patterns-Katalog

Vorlesung Programmieren. Software Design. Software Design. Entwurfsmuster

Entwurfsmuster. Tutorium 17 Fabian Miltenberger INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD)

3. Entwurfsmuster zur Entkopplung von Modulen. Übersicht zu Entwurfsmustern

Modellarbeit I: Entwurfsgerechte Klassenmodellierung

Software Reuse Sommer Schritt 1: Rechtschreibung, Grammatik, Wortschatz, Semantik Schritt 2: Vertiefung

Design Patterns. 3. Juni 2015

Software Engineering. 7. Entwurfsmuster

Creational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.

Lehrplan: Architektur und Design. paluno

Decorator Pattern. Analyse- und Design-Pattern CAS SWE FS14. Roland Müller Samuel Schärer

Design Patterns und C#

Softwaretechnik 1 5. Tutorium

Praxisbuch Objektorientierung

Paket Kommando. Command Command Processor Visitor

I Grundlagen der parallelen Programmierung 1

Wahlpflichtfach Design Pattern

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

Software Engineering. 10. Entwurfsmuster II. Franz-Josef Elmer, Universität Basel, HS 2015

Entwurfsmuster. Die Entwurfsmuster Observer, State und Singleton am Beispiel einer Digital-Uhr

Auf einen Blick. 1 Einleitung Die Basis der Objektorientierung Die Prinzipien des objektorientierten Entwurfs...

Entwurfsmuster. Marc Monecke

Software Engineering 1 6. Übung. Sönke Holthusen, Matthias Kowal, Joachim Steinmetz Institut für Softwaretechnik und Fahrzeuginformatik

Wahlpflichtfach Design Pattern

Konzepte der parallelen Programmierung

Objektorientierte Systementwicklung

Objektorientierte und Funktionale Programmierung SS 2014

Wahlpflichtfach Design Pattern

Architektur und Entwurfsmuster Definition, Abgrenzung und ausgewählte Beispiele

Betriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion

14 Design Patterns Einführung 14.2 Composite Pattern

Deutsche Ausgabe. Die Kraft von C# voll ausschöpfen! C# 3.0. Entwurfsmuster. Judith Bishop. O Reilly. Deutsche Übersetzung von Thomas Demmig

Auf einen Blick. 1 Einführung Funktionen und funktionale Aspekte Objektorientierte Programmierung mit JavaScript...

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

OOSE 8 Entwurfsmuster (Hörsaalübung)

RO-Tutorien 15 und 16

Pflichtenheft Master Thesis Von Swing zu Ergonomie

Programmieren I. Überblick. Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Design Pattern. Motivation, Beispiel Definition "Das" Buch der Gang of Four Ausführliches Beispiel: Facade Beispiele. Aufgabe

Betriebssysteme. Tutorium 2. Philipp Kirchhofer

Programmiertechnik II WS 2017/18

Programmiertechnik II SS Fakultät Informatik Bachelor Angewandte Informatik

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

PHP OOP, Design Patterns und UML. Marco Skulschus

Einführung in die Informatik II

Software-Entwurfsmuster (weitere) A01 OOP. Software-Entwurfsmuster (weitere)

Design Patterns. 5. Juni 2013

Programmieren I. Überblick. Institut für Angewandte Informatik. KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

Pthreads. David Klaftenegger. Seminar: Multicore Programmierung Sommersemester

Transkript:

Tutorium Softwaretechnik I Moritz Klammler 11. Juli 2017 Fakultät für Informatik, IPD Tichy Titelfoto: Copyright (C) 2010 Multimotyl CC BY-SA 3.0 1 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu

Themen des Tages XXXXXXXXXX Übungsblatt 5 Implementierung Endliche Automaten Innere Klassen in Java Grundlegende Konzepte der parallelen Programmierung Falls gewünscht: Wiederholung Entwurfsmuster 2 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy

Implementierung von endlichen Automaten switch-case Tabellengesteuert State-Pattern 3 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy

Implementierung von endlichen Automaten Ein Musikspieler hat zwei Tasten für die Benutzer-Interaktion stop play/pause und folgende drei Zustände stopped paused playing wobei der initiale Zustand stopped ist. Wird im Zustand playing die play/pause-taste gedrückt, speichert der Spieler die aktuelle Wiedergabeposition. Neuerliches Drücken der Taste setzt die Wiedergabe an dieser Stelle fort. Das Drücken der stop-taste löscht eine allenfalls gespeicherte Wiedergabeposition und beendet in jedem Fall die Wiedergabe. Erstelle ein UML-Zustandsdiagramm für den Musikspieler Implementiere den Musikspieler als endlichen Automaten 4 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy

Implementierung von endlichen Automaten switch-case + Zusätzlicher Code kann flexibel eingebaut werden + Implementierung von Hand ist straight-forward Bei vielen Zuständen und Eingaben unübersichtlich Tabellengesteuert + Sehr kompakte und effiziente Codierung Zusätzlicher Code schwierig einzubauen Low-level: Compiler kann nur sehr eingeschränkte Prüfungen durchführen State -Pattern + High-level: Compiler kann umfangreiche Prüfungen durchführen + Softwaretechnisch gut wartbar Viel Code Memory- und Performance-Overhead 5 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy

Grundlegende Konzepte der parallelen Programmierung Hardware Prozessor Hauptspeicher Instruktionszähler Register Cache Betriebssystem Prozess Adressraum Scheduler Stack Thread (Faden) Fiber (Faser) Parallelität Single Instruction Single Data (Sequentiell) Single Instruction Multiple Data (Vektorisierung) Multiple Instruction Single Data (Pipelines) Multiple Instruction Multiple Data (Multiproc.) Nebenläufigkeit Kritischer Abschnitt Lock (Mutex) Atomare Operation Transactional Memory Techniken Fork/Join-Parallelisierung (OpenMP) Tasks Spooler 6 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy

Wiederholung: Design Patterns (Gang of Four) Creational Patterns Abstract Factory Builder Factory Method Prototype Singleton Structural Patterns Adapter Bridge Composite Decorator Facade Flyweight Proxy Behavioral Patterns Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Method Vistor 7 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy

Wiederholung: Entwurfsmuster (Vorlesung) Entkoppelungsmuster Adapter Beobachter Brücke Iterator Stellvertreter Vermittler Variantenmuster Abstrakte Fabrik Besucher Erbauer Fabrikmethode Kompositum Schablonenmethode Strategie Dekorierer Zustandshandhabungsmuster Einzelstück Fliegengewicht Memento Prototyp Zustand Steuerungsmuster Befehl Master-Worker Virtuelle Maschinen Interpretierer Bequemlichkeitsmuster Bequemlichkeitsklasse Bequemlichkeitsmethode Fassade Null-Objekt 8 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik I Fakultät für Informatik, IPD Tichy