Skip to content

Commit f4a0464

Browse files
authored
Merge pull request #6 from markusschlegel/main
Propose Decoupled by Default
2 parents 134da65 + cfe36d7 commit f4a0464

File tree

1 file changed

+24
-4
lines changed

1 file changed

+24
-4
lines changed

index.html.pm

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,35 @@
7878
}
7979
◊ul[#:class "list-disc list-inside mx-2 my-4 sm:text-lg leading-relaxed"]{
8080
◊li{18.45 Doors open & Welcome}
81-
◊li{Really Functional Data Structures (Marvin)}
81+
◊li{◊strong{Really Functional Data Structures} (Marvin)}
8282
◊p[#:class "ml-10 my-2 italic text-base"]{
8383
Last time, David showed us functional data structures in the form of persistent data structures. In this talk, I want to show you data structures that are defined entirely by functions themselves - no classes, structs, bitmaps, etc.! Knowing about such structures not only tickles the brain, but can also lead to a better intuition for solving problems functionally. Furthermore, one of the data structures shown can be used for space-efficient encodings of fractals and fun animations.
8484
}
8585
◊li{Short break}
86-
◊li{Talk 2 (maybe you?)}
87-
◊; ◊p[#:class "ml-10 my-2 italic text-base"]{
86+
◊li{◊strong{Decoupled by Default – Funktionale Programmierung in der Softwarearchitektur} (Markus)}
87+
◊p[#:class "ml-10 my-2 italic text-base"]{
88+
89+
Kopplung – das Maß der Abhängigkeiten zwischen Modulen – ist das
90+
zentrale Konzept der Softwarearchitektur. Die herkömmliche Sicht auf
91+
Kopplung ist die, dass hohe Kopplung dann entsteht, wenn man nicht
92+
aufpasst beim Programmieren: wenn man ◊em{nicht} gegen explizite
93+
Schnittstellen programmiert, wenn man ◊em{kein} Visitor-Pattern
94+
verwendet, wenn man ◊em{nicht} Dependency Injection verwendet …
95+
Kopplung, so scheint es, ist das Resultat von Unterlassung. Die
96+
Kopplung wieder zu senken, erfordert dann ausdrückliche
97+
Gegenmaßnahmen. Dieser Vortrag zeigt eine alternative Sichtweise:
98+
Viele Arten von Kopplung entstehen aufgrund von Unzulänglichkeiten der
99+
Programmiersprache. In funktionalen Sprachen treten diese
100+
Kopplungsarten teilweise gar nicht auf oder zumindest ist die
101+
Werkseinstellung dieser Sprachen dergestalt, dass Kopplung vermieden
102+
wird. Das zeigen wir im Vortrag insbesondere mit Blick auf den Umgang
103+
mit geteiltem Zustand und Plattformabhängigkeiten. Am Ende zeigen
104+
wir, dass auch funktionale Programmierer nicht automatisch vor allen
105+
Arten unnötiger Kopplung sicher sind. Wir zeigen, wie der Ansatz des
106+
Denotational Design dort Abhilfe schaffen kann, indem die Semantik von
107+
Schnittstellen in den Vordergrund gerückt wird.
88108

89-
◊; }
109+
}
90110
◊li{Food, talking, coding, whatever}
91111
◊li{22.00 End}
92112
}

0 commit comments

Comments
 (0)