• Keine Ergebnisse gefunden

HA - Bemerkungen

N/A
N/A
Protected

Academic year: 2022

Aktie "HA - Bemerkungen"

Copied!
15
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Software-Engineering für langlebige Systeme

(2)

 HA1

 Übung zur Prüfung

 Code-Guidelines

PA

(3)

HA - Bemerkungen

 Bearbeitungspunkt Aufgabe

Wer nur die Hälfte der Aufgabe bearbeitet kann nur die Hälfte der Punkte erwarten

 Heimübungslösungen sollen strukturiert sein

(4)

Verwechseln von Patterns

 Im Pattern liegende Gründe

eine ähnliche Struktur

ein ähnliches Verhalten

ein ähnliches Problem lösen

 Im Entwickler liegende Gründe

Kennt nicht alle Pattern

Pattern nicht gekennzeichnet

Falsche Nutzung

(5)

Cluster

 Abstract Factory

 Builder

 Factory Method

 Singelton

 Command

 Visitor

 Strategie

 Adapter

 Bridge

 Decorator

 Wrapper

 Proxy

(6)

Ein ernstes Wort: Programmierstil

 Bei einer Mehrheit der abgegebenen Taschenrechner ist der Programmierstil nicht in Ordnung!

 Copy und Past herrscht vor

 Kommentare, weil man Kommentare machen muss

 Unnötige Komplexität

 „Verzeigungsmethoden“

 Methoden haben mehr als eine Aufgabe

 Lange Methoden

 Kaum Struktur

Keine Trennung der Aufgaben

View-Document?

(7)

Analyse

Copy und Paste-Programmierung

Duplizierter Code

Gleiche Anweisungen mit verschiedenen Parametern

Lange Methode

Methode ist sehr lang (hier mehr als 25 Zeilen)

Große Klasse

Zuviele Klassenelemente

Neid (engl. Feature Envy)

Ständiger Zugriff auf Elemente einer anderen Klasse

Deutet auf flasche Verteilung der Features hin

Case-Anweisungen in objektori. Code

Auch if-Rutschen

Objektorientierter Code sollte möglichst ohne Switch/cAse auskommen

(8)

 Faule Klasse

Eine Klasse leistet zu wenig, um ihre Existenz zu rechtfertigen.

 Unangebrachte Intimität

Zwei Klassen haben zu enge Verflechtungen miteinander.

 Datenklasse

Klassen mit Feldern und Zugriffsmethoden ohne Funktionalität. Oft zu finden in einem sogenannten anämischen Fachmodell.

 Ausgeschlagenes Erbe

Unterklassen brauchen die Methoden und Daten gar nicht, die sie von den Oberklassen erben

(9)

 Kommentare

Angemessenheit

Ort

Aussagekraft

 Name Wahl (Aussage, lang, kurz)

Gute Namen .-)

 Komplexe/Tiefe Verzweigungen

Starke Schachtelung von Scheiben, Verzweigungen, Fehlerbehandlungen

 Code-Elemente Sprache

 Kommentar-Sprache

(10)

Übung zur Mündl. Prüfungen

 Zweier Teams

 Person A:

Stellt Fragen

Achtet auf Korrektheit

Macht sich zur Korrektheit Notizen

Bei Unsicherheiten in der Antwort nachfragen!

 Person B:

Beantwortet die Fragen

 Keine Notizen auf den Fragezettel!

(11)

Rückmelderunde

 B stellt kurz dar, wie es ihm ergangen ist.

 A gibt Rückmeldungen, ob

Die Antworten richtig waren

Die Antworten gut verständlich und nachvollziehbar waren

Ob B Notizen erstellt hat

Wie er die Leistung von B benoten würde

(12)

Rollentausch

Alles nochmal mit anderen Fragen und getauschten Rollen

(13)

Runde 1

 Was ist Softwareerosion?

 Welche Themenfelder kann man bei der Softwareerosion betrachten (Übersicht)?

 Welche wahrnehmungspsychologischen Prinzipien werden durch Coding Guidelines angesprochen?

 << Bitten Sie ihren Partner eines der genannten Prinzipien genauer zu erklären>>

 Was sind Design Pattern?

 Wie soll Code aus Sicht der langlebigen Systeme dokumentiert werden? Warum?

(14)

Runde 2

 Was sind langlebige Systeme?

 Wie heißt das Hauptproblem bei langlebigen System? Bitte beschreiben Sie dieses genau.

 Geben sie bitte eine Übersicht über die für die Vorlesung relevanten Bereiche der Wahrnehmungspsychologie.

 Nennen Sie einige Design-Pattern.

 << Bitten Sie ihren Partner eines der genannten Pattern genauer zu erklären>>

 Was ist Atomsemiotik ?

 Was hat die Atomsemiotik mit langlebigen Systemen zu tun?

(15)

Code-Guidelines und Dokumentation

 Überlegen Sie sich was an Code-Regeln ihnen wichtig ist.

 Stellen Sie drei Regeln zusammen, die sich als die wichtigsten bezeichnen würden.

Verteidigen Sie ihre Regeln

Referenzen

ÄHNLICHE DOKUMENTE

(a) Ihre Laborrechner für das Interface /dev/eth1, über den Router RNS1 und für die Protokoll IPv4 und IPv6 kommunika- tionsfähig machen. (b) Einsatztests sowohl über die

[r]

[r]

[r]

[r]

[r]

Beförderungsvertrag in diesem Sinne sei aber nur das zwischen dem Absender des Guts und dem Frachtführer bestehende Rechtsverhältnis, nicht jedoch der Vertrag zwischen

&lt;S&gt;&lt;/S&gt; mit Bindestrich daran ohne Spatium, S.. Reihen etc.) spielen insofern keine Rolle, da sie über die Stücktitelaufnahme sowieso auch indirekt mit dem