Bild von .NET Day Switzerland 2024

04. Sep 2024

.NET Day Switzerland 2024

Der Treffpunkt für Entwickler, Architekten und Technologie-Enthusiasten, welche die neuesten Trends und Innovationen in der Microsoft-Softwareentwicklung erkundeten. Wir haben für euch die Highlights zusammengefasst.

Auch dieses Jahr wieder verwandelte sich die Arena Cinemas in Sihlcity, Zürich, am 27. August 2024 in einen Hotspot für Entwickler, Architekten und Technologie-Enthusiasten. Diese unabhängige Technologie-Konferenz bietet eine Plattform, um die neuesten Entwicklungen rund um .NET, .NET Core, C#, ASP.NET Core, Azure und vieles mehr zu erkunden. Renommierte Sprecher teilten ihr Fachwissen und gewähren tiefgehende Einblicke in die Welt der Microsoft-Softwareentwicklung. Neben spannenden Vorträgen bietet der .NET Day auch Raum für anregende Diskussionen und Networking mit Gleichgesinnten.

Auch dieses Jahr waren drei Entwickler von Cudos dabei. Um maximal von der Konferenz zu profitieren, haben sie unterschiedliche Vorträge besucht und ihre persönlichen Highlights für euch zusammengefasst.

Linus' Highlights

Es ist mein zweiter .NET Day, und ich habe mich sehr darauf gefreut. Es ist immer wieder spannend, neue Impulse von aussen zu erhalten und frische Perspektiven zu entdecken. Die Vielfalt an Themen und die Möglichkeit, von erfahrenen Fachleuten zu lernen, bereichern nicht nur mein technisches Wissen, sondern auch meine Sichtweise auf die Softwareentwicklung insgesamt.

Architektur

Ich habe mir die Vorträge zum Thema Architektur herausgepickt, die spannende Einblicke in verschiedene Aspekte der Softwarearchitektur boten. Die Titel waren: "Evolutionary Architecture: The What. The Why. The How", "Five Common Mistakes with Distributed Systems", "Implementing the Planet's Largest E-Commerce Site Using Service Boundaries" und "Onion, Hexagonal, Clean or Fractal Architecture? All of them, and more!!". Diese Vorträge hatten eindeutig eine gemeinsame Basis, unterschieden sich jedoch in ihren Perspektiven und ergänzten sich hervorragend.

Hier sind die wichtigsten Erkenntnisse, die ich zusammenfassen möchte:

  1. Einfachheit zuerst: Falls du ein System von der grünen Wiese anfängst, mache alles so simpel wie möglich und löse konkrete Probleme, wenn sie auftauchen.
  2. Evolutionary Architecture: Die Architektur im Sinne der Struktur eines Systems ist nicht statisch. Sie darf und muss sich mit den sich ändernden Anforderungen anpassen.
  3. Verteilte Systeme: Beginne nicht mit einem verteilten System. Teile dein System erst dann in verteilte Systeme auf, wenn es wirklich nötig ist.
  4. Bounded Context: Verlasse dich beim Erstellen von Bounded Contexts nicht ausschließlich auf naive Fachbegriffe. Finde Kontexte, die in sich möglichst viel Kohäsion haben.
  5. Architekturvielfalt: Da sich die gängigen Architekturen (Onion, Hexagonal, Clean oder Fractal Architecture usw.) im Kern ähneln, nimm von allem das, was für dein System am besten passt.
  6. Entwicklung erfolgreicher Systeme: Erfolgreiche verteilte Systeme entwickeln sich häufig aus einem monolithischen Ansatz, während weniger erfolgreiche Systeme oft von Beginn an als verteilte Systeme konzipiert werden.

Diese Erkenntnisse haben mir nicht nur neue Perspektiven eröffnet, sondern auch mein Verständnis für die Komplexität und Flexibilität von Softwarearchitekturen vertieft.

Persönliches Fazit

Der .NET Day ist weit mehr als nur eine technische Konferenz – er bietet eine Plattform, die sowohl technische als auch soziale Aspekte der Softwareentwicklung beleuchtet. In ihrem inspirierenden Abschlussvortrag teilte Taylor Poindexter ihre persönliche Entwicklungskarriere und gab uns wertvolle Einblicke in die Eigenschaften, die einen guten Leader ausmachen. Ihre Hauptbotschaft war, dass es entscheidend ist, darauf zu achten, dass die Teammitglieder sich entfalten können und glücklich sind.

Im technischen Teil der Veranstaltung habe ich mich auf die Architektur konzentriert. Hier konnte ich nicht nur viele Bestätigungen meiner bisherigen Ansätze gewinnen, sondern auch neue Erkenntnisse sammeln, die meine Perspektive erweiterten. Der .NET Day hat mir somit nicht nur technisches Wissen vermittelt, sondern auch die Bedeutung von Soft Skills und Leadership in der Softwareentwicklung nähergebracht.

Simeï's Highlights

Von Architektur über native Entwicklung mit .NET MAUI bis zu Cloud-Native Entwicklung mit .NET Aspire konnte ich dieses Jahr am .NET Day wieder viele Eindrücke sammeln und in spannende Themen eintauchen. Folgend möchte ich euch von meinen zwei Highlights erzählen.

Real-Time Connected Apps with .NET MAUI, Blazor and SignalR

Geralt Versluis hat uns in einer unterhaltsamen und lehrreichen Session gezeigt, wie man mit SignalR verschiedene .NET-Anwendungen in Echtzeit miteinander kommunizieren lassen kann. Er präsentierte eine kreative Scribble-Anwendung, die aus mehreren Teilen bestand: einer nativen .NET MAUI-App für Android, einer Desktop-Anwendung und einer Blazor-Webanwendung, über die wir raten konnten, was er gerade zeichnete.

Während der Demo konnten wir live verfolgen, was Geralt auf der Leinwand zeichnete, und gleichzeitig unsere Vermutungen in die Webanwendung eingeben. Es war spannend zu sehen, wie die verschiedenen Plattformen nahtlos miteinander interagierten.

Geralt gab uns auch wertvolle Einblicke in die Entwicklung nativer mobile Anwendungen mit .NET MAUI. Er erklärte, wie SignalR es ermöglicht, verschiedene Geräte zu verbinden, und beleuchtete einige der Herausforderungen, die dabei auftreten können. Ein wichtiger Punkt war, dass wenn die App im Hintergrund lauft, die SignalR Verbindung vom Betriebssystem getrennt wird..

Insgesamt war es eine fesselnde und lehrreiche Präsentation, die sowohl technische Details als auch praktische Tipps zur Entwicklung von Echtzeitanwendungen vermittelte.

Demystify cloud-native development with .NET Aspire

Ein besonderes Highlight war der Vortrag von Maddy Montaquila über .NET Aspire. Dieses Tool soll die Entwicklung von Cloud-Anwendungen revolutionieren, indem sie es ermöglicht, Microservices wie Backend, Frontend und Datenbanken ganz ohne Dockerfiles oder Docker Compose zusammenzustellen.

Maddy beeindruckte mit dem integrierten Dashboard, das Ressourcen, Logs, Metriken und eine Konsole bietet – ein unverzichtbares Tool für Entwickler! Die Verwendung von "magic strings" zur automatischen Port-Zuweisung nimmt uns die mühsame Arbeit ab und steigert die Effizienz erheblich. Und das ganze im C# Syntax und nicht YAML.

Zudem stellte sie klar, dass .NET Aspire bereits eine grosse Auswahl an Komponenten bietet, um z.B. benutzerdefinierte Python-Skripte oder RabbitMQ-Container problemlos zu integrieren. Und das Beste: Das Dashboard wird in Zukunft anpassbar sein, was die Flexibilität weiter erhöht.

Insgesamt war Maddy's Vortrag eine inspirierende Einführung in die Möglichkeiten von .NET Aspire, ich kann es kaum erwarten es selbst auszuprobieren!

Persönliches Fazit

Nach meinem dritten Besuch beim .NET Day Switzerland kann ich sagen, dass ich jedes Mal neue und spannende Erkenntnisse gewinnen konnte. Auch wenn die Vorträge oft nicht in die Tiefe gehen, erweitern sie meinen Horizont in der .NET-Welt. Es ist faszinierend zu sehen, wie sich .NET weiterentwickelt, und ich freue mich darauf, die neuen Tools auszuprobieren.

Matthias' Highlights

Von der Architekturentwicklung über die Herausforderungen verteilter Systeme bis hin zu den inneren Abläufen der Minimal APIs – am diesjährigen .Net Day hatte ich die Gelegenheit, in eine Vielzahl von Themen einzutauchen und wertvolle Erkenntnisse zu gewinnen. In diesem Beitrag möchte ich euch von meinen zwei persönlichen Highlights berichten.

Building minimal APIs from scratch

Ein absolutes Highlight des .NET Days war für mich die fesselnde Live Coding Session von Safia Abdalla, in der sie den Aufbau der .NET Minimal API von Grund auf demonstrierte. Es war faszinierend zu beobachten, wie aus einem einfachen HTTP-Listener nach und nach ein voll funktionsfähiger Server entstand. Schritt für Schritt entwickelte sich dieser Server weiter, indem Routing-Mechanismen implementiert und eine Middleware-Pipeline aufgebaut wurde. Besonders spannend war es zu sehen, wie die Query Parameter dynamisch an die Route-Handler gebunden wurden.

Durch den übersichtlichen Aufbau war es einfach nachzuvollziehen, wie das Chaining in der Middleware funktioniert und wieso es so wichtig ist, dass die einzelnen Middleware Handler in der richtigen in Reihenfolge hinzugefügt werden. Es war äusserst lehrreich, das Wachstum des Servers in Echtzeit zu verfolgen und einen direkten Einblick in die Funktionsweise der Funktionen zu erhalten, die man typischerweise verwendet, um einen ASP.NET-Server aufzusetzen.

Mastering Integration Testing for .NET Web APIs with WebApplicationFactory and TestContainers

In seinem Vortrag präsentierte Marc Rufer eine einfache und effektive Methode zur Erstellung von Integrations-Tests für Web APIs mithilfe der WebApplicationFactory. Anhand anschaulicher Codebeispiele demonstrierte er, wie einzelne Services des Servers durch Mocks ersetzt werden können, um sicherzustellen, dass der Integrations-Test alle Interaktionen zwischen den Komponenten umfassend abdeckt.

Marc erläuterte zudem, wie man verschiedene HTTP-Clients über die WebApplicationFactory erstellt, um unterschiedliche Zustände der API zu testen. Dazu gehört beispielsweise ein Client, der bereits das Token eines Benutzers besitzt. Diese Herangehensweise ermöglicht es, mit weniger Code pro Test zu überprüfen, ob die Autorisierungslogik auf einem Endpoint korrekt funktioniert.

Ein besonders spannender Teil seines Vortrags war die Demonstration, wie man mit Testcontainers ganz einfach programmatisch einen Docker-Container mit einer Datenbank aus der Testanwendung heraus starten kann. Dies erlaubt es, direkt gegen die Datenbank zu testen, die auch in der Produktion verwendet wird. Da alles in Code umgesetzt ist, entfällt die Notwendigkeit, sich um Docker-Compose-Dateien zu kümmern oder darum, wie man Docker ansteuert, um zu Beginn des Tests einen Container zu starten und am Ende wieder aufzuräumen.

Insgesamt zeigte Marc Rufers Vortrag, wie man realistische Integrations-Tests für Web APIs effizient und unkompliziert schreiben kann.

Persönliches Fazit

Mein erster Besuch des .NET Day Switzerland war ein spannender und lehrreicher Tag. Besonders die Vielfalt der Themen hat mich begeistert. Ich bin gespannt, wie sich .NET in Zukunft weiterentwickeln wird und freue mich darauf, das Gelernte in meinen eigenen Projekten umzusetzen.


Schliessen
Stamp Icon-Print Icon-Clear
S
M
L
XL
XXL