Veröffentlicht am 20. November 2020

Frage und Antwort mit Mark J. Price von Optimizely, Autor von C# 9 und .NET 5 - Moderne plattformübergreifende Entwicklung

Am 10. November 2020 veröffentlichte Mark J Price, Digital Learning Product Manager bei Optimizely, die fünfte Auflage seines Buches C# 9 und .NET 5 - Moderne plattformübergreifende Entwicklung. Das Buch ist ein umfassender Leitfaden für Anfänger, um die wichtigsten Konzepte, reale Anwendungen und die neuesten Funktionen von C# 9 und .NET 5 mit praktischen Übungen unter Verwendung von VS Code zu erlernen. In diesem Q&A erfahren Sie mehr über Marks Karriere, entdecken seine Inspiration für das Schreiben des Buches und bekommen einen Vorgeschmack auf die Inhalte der fünften Auflage.

Morgan Short
von Morgan Short
graphical user interface, diagram

Können Sie den Lesern ein wenig über sich und Ihre Karriere erzählen?

Ich lebe in Cirencester, Vereinigtes Königreich, und bin derzeit Digital Learning Product Manager bei Optimizely und verantwortlich für alle Optimizely-Lernprodukte und Entwicklerschulungen. Ich habe 2016 als Technical Trainer bei Optimizely teilgenommen und Schulungen für unsere Partner und Kunden erstellt.

Ich liebe es, das Komplexe einfach zu machen. Ich liebe es, etwas über Technik zu lernen, die noch niemand zuvor benutzt hat, und mein Wissen dann mit anderen auf eine leicht verständliche Weise zu teilen. Ich bin ein erfahrener Pädagoge mit einer Leidenschaft für Technik wie Microsoft-Entwicklerplattformen einschließlich C# und .NET.

Ich stamme aus einer Familie von Pädagogen. Als Teenager in den späten 80er Jahren verdiente ich mir ein Taschengeld, indem ich lokalen Geschäftsinhabern beibrachte, wie sie ihre Computer benutzen. Ich habe an der Universität Informatik studiert. Ich habe mir Visual Basic 1.0 selbst beigebracht und war eine Zeit lang als selbständiger Trainer in Großbritannien tätig. In den späten 90er Jahren zog ich nach San Francisco, um am Dot-Com-Boom teilzunehmen. Später ging ich zu Microsoft, um die millionenstarke Entwickler-Community über die brandneue Programmiersprache C# und das .NET Framework zu unterrichten.

Zu den Höhepunkten meiner 30-jährigen Erfahrung gehören: die Arbeit für das Schulungs- und Zertifizierungsteam von Microsoft, die Betreuung junger Menschen in Ausbildungsprogrammen und die Durchführung von Bootcamps, um Programmierer schnell auf den Entwicklerplattformen von Microsoft und Optimizely One zu zertifizieren. Ich habe mir sogar ein paar Ablenkungen gegönnt, darunter ein einjähriges Sabbatjahr, in dem ich Drehbuchschreiben in Kanada studierte und einige Zeit Mathematik an Londoner Schulen unterrichtete.

Was hat Sie ursprünglich dazu inspiriert, dieses Buch zu schreiben?

Ich vertrete die Philosophie, "Ja" zu sagen, wenn sich Ihnen neue Möglichkeiten bieten. Im Sommer 2015 kam mein Verleger Packt auf mich zu und bot mir die Möglichkeit, ein Buch über C# 6 zu schreiben. Ich hatte noch nie zuvor ein Buch geschrieben und hatte nur wenig Ahnung von dem Prozess, aber ich hatte die entsprechenden Erfahrungen, um über das Thema zu schreiben. Also ergriff ich die Gelegenheit und sagte zu.

Zu dieser Zeit war .NET Core noch nicht einmal veröffentlicht, aber wir beschlossen, das Buch mit der Vorstellung zu schreiben, dass es die Zukunft der Microsoft-Entwicklung sein würde. Es gibt einen Aphorismus aus dem Eishockey: Laufen Sie nicht dorthin, wo der Puck ist, sondern dorthin, wo er sein wird. Genau das habe ich mit dem Buch getan.

Das ist auch mein Ansatz für das Training im Allgemeinen. Es ist wichtig, die aktuelle Situation zu verstehen, aber auch an die Zukunft zu denken. Seit ich an Optimizely teilnehme, sind wir massiv gewachsen. Unsere Mitarbeiterzahl hat sich verdreifacht und unser Produktportfolio hat sich erweitert. Ich liebe es, Trainingskurse für ein scheinbar komplexes Produktportfolio anbieten zu können. Angesichts der Beschleunigung des digitalen Wandels durch die globale Pandemie ist es wichtiger denn je, die Menschen in Tools wie diesen zu schulen. Ich bin stolz auf die Arbeit, die wir bei Optimizely leisten, um Unternehmen dabei zu helfen, mit der Digitalisierung bis weit in die Zukunft hinein erfolgreich zu sein.

Wie lautet Ihr Plädoyer für das Buch?

Die Microsoft Docs Site bietet umfassende Informationen über C# und .NET, aber es kann überwältigend sein, die Informationen zu finden, die man braucht. Dieses Buch bietet Ihnen einen schnellen Einstieg und führt Sie in die richtige Richtung.

Für jemanden, der neu in C# und .NET ist, ist das Buch wie ein Stützrad, mit dem man Fahrradfahren lernt. Es zeigt anhand von Schritt-für-Schritt-Beispielen, was alles möglich ist. Es deckt alles ab, von der objektorientierten Programmierung mit der Sprache C# über .NET-Klassenbibliotheken bis hin zur Erstellung von Websites, Diensten und Mobile Apps. Am Ende des Buches sieht der Leser, was möglich ist, weil er den Code durchgehend selbst schreibt.

Für jemanden, der in der Vergangenheit mit C# gearbeitet hat, aber die großartigen neuen Funktionen, die in den letzten fünf bis zehn Jahren hinzugekommen sind, verpasst hat oder immer noch mit dem .NET Framework feststeckt, ist das Buch eine schnelle und unterhaltsame Möglichkeit, seine Kenntnisse und Fähigkeiten zu modernisieren.

Ich verdanke meiner Zeit als Drehbuchautorin das Konzept von "show don't tell". Wenn Sie mein Buch lesen, sieht das für Sie folgendermaßen aus: Nachdem ich kurz erklärt habe, was Sie gleich tun werden, biete ich Ihnen Schritt-für-Schritt-Aufgaben an, die Ihnen eine nützliche Funktion der Programmiersprache C# oder eine API in den .NET-Klassenbibliotheken zeigen. Dann gebe ich Ihnen Links zur offiziellen Dokumentation oder zu interessanten Blogartikeln, mit denen Sie Ihre Kenntnisse vertiefen können, ohne Sie zu überfordern, wenn Sie entscheiden, dass diese Funktion für Sie heute nicht relevant ist.

Welche drei Worte würden das Buch am besten beschreiben?

Umfassend, zeitgemäß und unterhaltsam.

Es ist umfassend mit der Einschränkung, dass es eher in die Breite als in die Tiefe geht. Es wäre unmöglich, auf 822 Seiten alles in der Tiefe zu behandeln. Aber mein Buch deckt Themen ab, die andere auslassen. Dies ist das einzige C#-Buch, das neue Techniken wie Blazor WebAssembly und ML.NET für maschinelles Lernen sowie die Grundlagen von C# und den .NET-Klassenbibliotheken behandelt. Viele andere Bücher zu diesem Thema wurden vor Jahrzehnten geschrieben und obwohl sie aktualisiert wurden, behandeln sie immer noch auf Hunderten von Seiten alte Techniken wie Windows Presentation Foundation.

Wenn ein Leser nur eine Sache aus dem Buch mitnimmt, was hoffen Sie, dass das ist?

Die meisten Leute verstehen, dass .NET Core der Weg in die Zukunft ist. Die Zukunft ist da. Wenn Sie bestehende Apps auf .NET Framework haben, ist es jetzt an der Zeit, mit der Migration Ihrer .NET Framework-Codebasen auf .NET 5 zu beginnen. Es wird mehrere Monate dauern und wenn .NET 6 im November 2021 veröffentlicht wird, können Sie es targeting und haben dann drei Jahre lang Support von Microsoft. .NET 6 wird ein Long Term Support oder LTS Release sein. .NET 5 ist eine aktuelle Version.

Wir bei Optimizely hören auf unsere Kunden und Partner und wissen, wie wichtig es für unsere Plattformen ist, mit dem von Microsoft angeführten Wandel Schritt zu halten. Wir haben unsere Unterstützung für .NET Core in Plattformen wie Optimizely Delivery Core, das derzeit als Community Test Preview (CTP) verfügbar ist, angekündigt. Mit unserer Optimizely Content Delivery API und Optimizely Content Management API haben wir die Headless-Funktionalität erweitert. Ich bin zuversichtlich, dass wir in naher Zukunft weitere Ankündigungen im Zusammenhang mit der modernen Entwicklung machen werden. Es ist eine aufregende Zeit, ein Optimizely-Entwickler zu sein!

Was hat sich mit dieser neuen Ausgabe am meisten geändert?

Das Buch hatte definitiv Zeit, sich weiterzuentwickeln. Die jüngsten inkrementellen Verbesserungen der Sprache C# sind schön, aber sie ist seit C# Version 5.0 aus dem Jahr 2012 ziemlich ausgereift, was sich in kleinen Änderungen im Buch widerspiegelt. Das Gleiche gilt für die .NET-Klassenbibliotheken. Microsoft hat viel Zeit in die Verbesserung der Leistung und Skalierbarkeit der Plattform investiert, aber die Entwickler erhalten diese Vorteile, ohne den Code, den sie schreiben müssen, ändern zu müssen.

Die größte Veränderung bei jeder neuen Ausgabe ist daher das Hinzufügen neuer Kapitel über neue App-Modell-Funktionen. Zum Beispiel Razor Pages in der dritten Ausgabe, maschinelles Lernen mit ML.NET und .NET CMSs in der vierten Ausgabe und jetzt Blazor Server und Blazor WebAssembly in der fünften Ausgabe.

Was waren die größten Herausforderungen beim Schreiben des Buches? Und was waren umgekehrt die lohnendsten Aspekte?

Die größte Herausforderung beim Schreiben des Buches war die Arbeit mit den Vorabversionen. Zwischen der Preview und der Live-Version können sich viele Änderungen ergeben, und das war eine Herausforderung. .NET 5 Preview 1 wurde im März 2020 veröffentlicht, und Microsoft brachte bis September monatliche Previews heraus. Im September und Oktober veröffentlichte Microsoft zwei Release Candidates mit Go Live-Lizenzen, was bedeutet, dass die Plattform stabil ist und Sie damit Apps auf Produktionsebene erstellen können. Zu diesem Zeitpunkt hatte ich sechs Wochen Zeit, den gesamten Code in meinem Buch zu überprüfen, um sicherzustellen, dass er mit der endgültigen Version funktionieren würde. Code, den ich für Preview 1 geschrieben hatte, funktionierte dann in Preview 2 nicht mehr und selbst grundlegende C#-Schlüsselwörter änderten sich in der Mitte des Jahres. Auch die Tools, die ein Entwickler zum Schreiben des Codes verwendet, wissen nichts von den Änderungen, so dass Ihr Code-Editor meldet, dass der Code falsch ist, obwohl er eigentlich korrekt ist und umgekehrt. Das ist alles sehr frustrierend... aber es lohnt sich, wenn ich in der Lage bin, ein Buch an dem Tag zu veröffentlichen, an dem Microsoft die General Availability Version von .NET 5 freigibt.

Der lohnendste Teil dieses Prozesses ist es, zu lernen, was es Neues in der Technik gibt, und diese Erkenntnisse mit anderen teilen zu können. Ich bin wirklich stolz auf die Arbeit, die ich geleistet habe. Bei manchen Projekten streicht man sich die Hände ab und macht weiter. Aber bei diesem Projekt geht es um kontinuierliche Verbesserung. Wir sind jetzt bei der fünften Ausgabe und arbeiten weiter an der Weiterentwicklung von .NET.

Woran arbeiten Sie als nächstes? Wird es weitere Ausgaben geben?

Ich habe mit der Planung der sechsten Ausgabe begonnen. Glücklicherweise ist Microsoft sehr transparent, was seine Pläne für .NET angeht und verspricht, von nun an jeden November eine neue Hauptversion zu veröffentlichen. Ich werde das Buch also weiterhin aktualisieren. Die sechste Auflage wird ein neues Kapitel über die .NET Multiplattform-App-Benutzeroberfläche, auch bekannt als .NET MAUI, enthalten. Damit können Entwickler ein einziges App-Projekt erstellen, das sowohl für mobile iOS- und Android-Geräte als auch für Windows- und Mac-Desktops geeignet ist.

Darüber hinaus schreibe ich Artikel zu verwandten Themen, die nicht in das gedruckte Buch passen, z.B. die Entwicklung auf einem Raspberry Pi. Schließlich würde ich gerne einen YouTube-Kanal und eine Website einrichten. Da ich bei Optimizely eine Vier-Tage-Woche habe, kann ich freitags an Projekten wie diesen arbeiten, was ich an der Arbeit in diesem Unternehmen sehr schätze.

Holen Sie sich Ihr eigenes Exemplar der fünften Ausgabe von C# 9 und .NET 5 - Moderne plattformübergreifende Entwicklung auf Amazon.