Patterns - Kondensierte Erfahrungen mit Code, Dingen und Menschen mit Michael Hunger

Patterns - Kondensierte Erfahrungen mit Code, Dingen und Menschen mit Michael Hunger

Author: Eberhard Wolff December 19, 2020 Duration: 1:04:21

Pattern für Software-Entwicklung gibt es schon seit mehr als 25 Jahren. Aber schon davor gab es Patterns für Dinge z.B. in der Gebäude-Architektur. Und mittlerweile sind auch Patterns für andere Bereiche entstanden. So erlauben sie den Zugriff auf Erfahrungen über den Umgang mit Code und Menschen. Sogar Refactorings sind eigentlich Patterns für den Umgang mit Code.

Links

  • Patterns
    • Christopher Alexander: “The Timeless Way of Building”, 1979, Oxford University Press, ISBN 978-0-19-502402-9
    • Peter Gabriel: “Patterns of Software”
    • Kevlin Henney, Frank Buschmann et al: “Pattern-Oriented-Software-Architecture 1-5” POSA 1-5 , besonders POSA 5
    • Gregor Hohpe, Bobby Woolf: “Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions”, 2003, Addison Wesley, ISBN 978-0-32-120068-6
    • Gerard Mezaros: “xUnit Test Patterns: Refactoring Test Code”, 2007, Addison Wesley, ISBN 978-0-13-149505-0
  • Refactoring
    • Michael Hungers Studienarbeit zu Refactoring
    • Refactoring 2nd Ed Vortrag beim JUG Saxony Day
    • Martin Fowler: “Refactoring: : Improving the Design of Existing Code”, 2nd Edition, 2018, Addison Wesley, ISBN 978-0-13-475759-9
    • Martin Fowler: Refactoring 2nd Edition Web Version
    • Joshua Kerievsky: “Refactoring to Patterns”, 2004, Addison Wesley, ISBN 978-0-32-121335-8
    • Kent Beck: “Implementation Patterns”, 2007, Addison Wesley, ISBN 978-0-32-141309-3
    • Pramod Sadalage: “Refactoring Databases: Evolutionary Database Design”, 2011, Addison Wesley, ISBN 978-0-32-177451-4
    • Steve Freeman, Nat Pryce: “Growing Object-Oriented Software, Guided by Tests”, 2009, Addison Wesley, ISBN 978-0-32-150362-6
    • Adam Tornhill: “Your Code as a Crime Scene: Use Forensic Techniques to Arrest Defects, Bottlenecks, and Bad Design in Your Programs”, 2015, O’Reilly, ISBN 978-1-68-050038-7
    • Adam Tornhill: “Software Design X-Rays: Fix Technical Debt with Behavioral Code”, 2018, O’Reilly, ISBN 978-1-68-050272-5 , Software Design
    • jQAssistant
    • Michael Feathers: “Working Effectively with Legacy Code”, 2013, Addison Wesley, ISBN 978-0-13-117705-5
  • Leute
    • Dave Hoover, Adewale Oshineye: “Apprenticeship Patterns: Guidance for the Aspiring Software”, 2009, O’Reilly, ISBN 978-0-59-651838-7
    • Philip Armour: “The Laws of Software Process”, 2003, Auerbach, ISBN 978-0-84-931489-6
    • Linda Rising: “Fearless Change: Patterns for Introducing New Ideas”, 2015, Addison Wesley, ISBN 978-0-13-439525-8

Jede Woche taucht Software Architektur im Stream live in die praktische Welt des Software-Entwurfs ein. Eberhard Wolff, manchmal zusammen mit Lisa Schäfer, Ralf D. Müller oder einem fachkundigen Gast, diskutiert architektonische Konzepte, Entscheidungen und aktuelle Trends-nicht in einem sterilen Studio, sondern direkt im interaktiven Live-Stream. Das Besondere: Zuschauer sind von Anfang an dabei, können im Chat Fragen stellen und die Diskussion mitlenken. Dieser Podcast nimmt den reinen Audio-Ton dieser lebendigen Sessions auf und macht sie so unterwegs oder offline verfügbar. Man hört den ungefilterten, spontanen Austausch von Experten, der oft von den Impulsen aus der Community geprägt ist. Es geht um konkrete Probleme, um Abwägungen zwischen Microservices und Monolithen, um neue Tools oder bewährte Prinzipien-immer mit einem starken Praxisbezug. Die Gespräche sind direkt, ungeschminkt und bleiben nah an den Herausforderungen, vor denen Entwickler und Architekten täglich stehen. Wer also denkt, Architektur sei trockene Theorie, wird hier eines Besseren belehrt. Dieser Podcast bietet den direkten, unmittelbaren Einblick in die Denkprozesse hinter guten Software-Systemen, so wie sie eben im echten Leben entstehen: im Dialog und manchmal auch im Diskurs.
Author: Language: German Episodes: 306

Software Architektur im Stream
Podcast Episodes
Software-Architektur: Inspiration von anderen Branchen [not-audio_url] [/not-audio_url]

Duration: 1:01:41
Software-Entwicklung und Software-Architektur scheinen ganz eigene Themen zu sein. Schließlich gehört Software zu dem Kompliziertesten, was Menschen überhaupt erschaffen haben, und sie ist immateriell. Was soll man also…
Funktionale Architektur - Ein konkretes Beispiel mit Mike Sperber [not-audio_url] [/not-audio_url]

Duration: 1:06:32
Anhand der iSAQB-Beispielaufgabe zeigt uns Mike Sperber, wie man ein System funktional umsetzen kann und welche Architektur sich dabei ergibt. So können wir das Vorgehen beim Entwurf einer funktionalen Architektur nachvo…
Kevin Goldsmith: Architecture and Organization [not-audio_url] [/not-audio_url]

Duration: 1:04:27
A vital aspect of modern software engineering is to align organizational structures with software architectures to enhance performance. With his extensive experience from Avvo, Spotify, Adobe, and Microsoft, Kevin will d…
Bert Jan Schrijver about Generic or Specific? [not-audio_url] [/not-audio_url]

Duration: 1:02:34
Usually, this is not an easy question to answer. The answer depends on a lot of different factors, including future factors you may not be aware of - yet. We will discuss this with Bert Jan Schrijver. He will share his e…
Technische Schulden Software langfristig weiterentwickeln [not-audio_url] [/not-audio_url]

Duration: 47:39
Oft wird Software immer schlechter wartbar, je länger Entwicklungsteams an ihr arbeiten. Dazu hat sich die Metapher “technische Schulden” etabliert. Aber es ist nicht immer sinnvoll, technische Schulden zu beseitigen und…
Engineering Excellence mit Michael Vitz [not-audio_url] [/not-audio_url]

Duration: 1:01:09
In dieser Episode sprechen Michael Vitz, Senior Consultant bei INNOQ und Java Champion, und Lisa Maria Moritz über das Thema “Engineering Excellence”. Sie klären, was sich hinter diesem Begriff verbirgt. Wie wichtig ist…
Software-Architektur = Abhängigkeiten Managen? [not-audio_url] [/not-audio_url]

Duration: 56:46
Wesentlicher Teil der Software-Architektur ist die Strukturierung großer Systeme in kleinere Module. Wichtig sind dabei vor allem die Abhängigkeiten der Module untereinander, um bei Änderungen die Auswirkungen auf andere…