Inhouseseminar Refaktorisieren
|
 |
Refaktorisieren zählt zu den Modebegriffen der
letzten Jahre
und wird fälschlicher Weise meistens synonym für
"Umbau des
Codes" verwendet. In Wirklichkeit ist Refaktorisieren eine seit 1992
entwickelte neue Disziplin in der Programmierung, die die systematische
Veränderung bestehenden Codes ohne Verhaltensänderung
beschreibt. Die meisten Entwickler kennen mittlerweile Befehle zum
Refaktorisieren in ihrer Entwicklungsumgebung, aber nur die Wenigsten
nutzen das volle Potenzial dieser Technik. Das ist umso bedauerlicher,
als dass Refaktorisieren zu den Kernpraktiken agiler Entwicklung
gehört und die Voraussetzung dafür ist, dass aus den
schnellen Iterationen kein architektonischer Alptraum wird.
Dieses Seminar führt Schritt für Schritt in das
Refaktorisieren ein und
bietet den Teilnehmern eine solide Grundlage, um die Technik
anschließend in ihrer täglichen Arbeit einzusetzen.
Es wendet sich
sowohl an Entwickler, als auch an Designer, Architekten und
Projektleiter. Praktische Übungen dienen zunächst dem
Training der
Grundkonzepte und führen weiter bis zu Strategien für
komplexe
Änderungen des Designs. Besonderer Wert wird dabei auf den
Bezug zu
realen Projekten gelegt. Möglichkeiten sowie
Einschränkungen in
agilen und nicht-agilen Umfeldern werden diskutiert.
Teilnehmer: 4-20
Entwickler
Mein Tipp: Kombinieren Sie dieses Seminar:
Was nehmen die Teilnehmer mit?
Die
Teilnehmer bekommen einen Überblick über die Technik
des
Refaktorisierens und üben die Abläufe an
Codebeispielen. Sie
bekommen ein Verständnis für die
Architekturentwicklung in
iterativen und agilen Projekten und für den Zusammenhang
zwischen
automatisierten Tests und Refaktorisieren.
Die folgenden Gebiete werden im Kurs
behandelt:
- Was ist Refaktorisieren?
- Evolutionäres Design
- Lesbarkeit verbessern
- Methodenstruktur verbessern
- Aufrufschnittstellen ändern
- Vererbungshierarchie verändern
- Zuständigkeiten verschieben
- Refaktorisieren von altem Code
- Refaktorisieren im Projektablauf
- Refaktorisieren von Java-Code mit Eclipse
Die Übungen finden in Java auf einer Eclipse-Umgebung statt,
weil
dort der leistungsfähigste Refactoringbrowser zur
Verfügung
steht. Kurse für Teams, die mit C# und C++ arbeiten auf
Anfrage.
Wer sollte teilnehmen?
Das Seminar ist für Entwickler, Desinger und Architekten, die
Refactoring bisher nur aus Büchern oder eigenen Versuchen
kennen und sich mit dem Thema in der Praxis auseinander setzen
wollen. Die Teilnehmer sollten über Kenntnisse
objektorientierten Designs und
Programmierung verfügen und Java zumindest in den
Grundzügen
beherrschen. Kenntnisse der Eclipse Plattform sind hilfreich, aber
nicht unbedingt notwendig.
Die Übungen werden paarweise durchgeführt.

Wie groß sollte die Gruppe sein?
Das Format eignet sich für vier bis etwa zwanzig Personen. Bei
mehr als zwölf Personen muss die Gruppe aufgeteilt werden und
ich
brauche einen Co-Trainer zur Verstärkung.
Wie läuft der Kurs ab?
Das Seminar wechselt zwischen Vortrag, Demonstration und
praktischen
Programmieraufgaben, die ca. 60% des zeitlichen Umfangs ausmachen.
Zudem wird Raum für Diskussionen zur Einbindung in die
Projektarbeit
gelassen. Die praktischen Aufgaben bauen aufeinander auf. Bei ihnen
wird ein Stück unlesbaren Codes schrittweise in ein
ausgefeiltes
Design mit klar erkennbaren Architekturansätzen transformiert.
Die Unit-Tests werden bereitgestellt.
Die Übungen werden auf Eclipse in Java
durchgeführt, Refactoring in C++ und C# wird diskutiert.
Die Übungen sowie die dafür notwendige freie Software
erhalten die Teilnehmer zu Beginn des Seminars auf CD oder USB Stick.
Organisatorisches
Welches
Material wird benötigt?
- Ein Seminarraum
mit ausreichend Tischen (Bestuhlung als
Meetingraum).
- 1 Flipchart
mit Papier und Stiften
- 1 Beamer mit
Leinwand
- Jeweils einen Entwicklungsrechner
bzw. Laptop für zwei Teilnehmer. Die
Teilnehmer
benötigen administrative Rechte für die Laptops. Die
jeweils
aktuelle Fassung von Eclipse, JUnit und JDK 1.5 oder höher
wird
bereitgestellt, kann aber auch vorinstalliert werden.
- Verpflegung (je
ein Mittagessen und zwei Kaffeepausen)
Welche
Unterlagen erhalten die Teilnehmer?
Die Teilnehmer erhalten den kompetten Foliensatz (72 Folien) sowohl als
PDF als auch auf Wunsch als gedrucktes Handout. Zudem erhalten die
Teilnehmer eine CD mit allen Übungen, Musterlösungen
und
notwendiger freier Software.
Wer hält den
Kurs?
Grundsätzlich halte ich Kurse, die Sie bei mir buchen selbst.
Bei großen Gruppen oder wenn sich kein geeigneter
Termin finden lässt, arbeite ich mit Johannes Link zusammen.
Wo ist der Kurs schon
gehalten worden?
Als öffentlicher Kurs ist das Seminar seit 2007 im Angebot bei
SIGS
DATACOM
und im Rahmen dessen mehrfach gehalten worden mit exzellenten
Bewertungen. Zudem ist er für verschiedene Kunden von mir als
Inhouse-Schulung gehalten worden.
Wie kann ich mehr
erfahren?
Treten Sie mit mir in Kontakt,
ich erstelle Ihnen gerne ein Angebot.