
Hallo Habr! Im Mai fand unsere große .NET-Konferenz statt, auf der Hardcore, Trends, Architektur und bewährte Verfahren Platz fanden.
Und jetzt teilen wir die besten Berichte (laut dem Publikum der Konferenz), von denen Sie:
- Sie werden erfahren, warum Sie (höchstwahrscheinlich) Funktionscode schreiben, ohne es zu wissen.
- Tauchen Sie ein in die asynchrone Programmierung.
- in zugänglicher Form über Deserialisierungsschwachstellen hören;
- Erhalten Sie umfassende Informationen zu den dramatischen Änderungen, die C # 8 mit nicht nullbaren Referenztypen gebracht hat.
- möchte einen Raspberry Pi kaufen;
- Erfahren Sie mehr über die "tatsächlichen" Kosten des Codes.
Es gibt eine Einschränkung: Diesmal ergab sich mit dem Bericht des Leiters eine besondere Situation. Erstens ist es nicht für .NET vorgesehen, und zweitens können wir die Videoaufzeichnung nicht freigeben (entsprechend den Leistungsbedingungen). Um dies zu kompensieren, haben wir dem Beitrag den 11. Platz hinzugefügt. Unter dem Schnitt können Sie also immer noch Videos mit 10 hervorragenden Berichten über die .NET-Entwicklung sehen. Lass uns gehen!
Alle Berichte werden zunehmend bewertet, aber die Unterschiede zwischen den Bewertungen sind äußerst gering - selbst auf dem zehnten Platz erhielt der Bericht mehr als 4,1 Punkte, was nicht bei jeder Konferenz der Fall ist. Darüber hinaus hängt die Reihenfolge teilweise davon ab, welche Formel zu berechnen ist (ob die Anzahl der Bewertungen berücksichtigt werden soll). Im Allgemeinen ist die Hauptsache, dass es hier keine schlechten Leistungen gibt - Sie können alles sicher sehen.
Debuggen asynchroner Szenarien in .NET
Sprecher:
Kevin Gosse, Christophe NasarreOrt: 11
"Selbst wenn es keinen einzigen Bericht gegeben hätte, wäre das konf bereits vergebens vergangen", schreiben die Hörer dieses Redenpaares über das Debuggen von asynchronem Code.
Zwei (im guten Sinne) Technikfanatiker sprechen anhand praktischer Beispiele darüber, wie bei async / await etwas schief gehen kann, auch wenn Sie der Meinung sind, dass Sie alles darüber wissen - und analysieren gemeinsam die Hauptvorlagen, die möglicherweise nicht richtig funktionieren.
Ich fühle mich nicht so gut ... Integrieren von Integritätsprüfungen in Ihre .NET Core-Lösungen
Sprecher:
Alex ThissenOrt: 10
Präsentation präsentierenSmoothies berichten über Integritätsendpunkte in ASP.NET Core 2.2: Wie werden sie eingebettet, was sind sie, was passiert mit externen Abhängigkeiten wie Datenbanken und HTTP-Endpunkten und wie wird all dies in einem Cluster containerisierter Software verwendet?
Der Bericht von Tisen zeichnet sich durch seine Nähe zur Produktion aus. Die Beispiellösungen gehen tiefer als MSDN-Beispiele und können problemlos auf reale Projekte angewendet werden.
Deserialisierungsvulns: Vergangenheit, Gegenwart und Zukunft
Sprecher:
Mikhail ShcherbakovOrt: 9
Sicherheitsexperten sind immer Stückware. Und so tief und relevant, und die Halle schlief nicht ein - es war tagsüber komplett mit Feuer. Michael stellt das Thema Schwachstellen in Deserialisierern in die Regale und teilt Best Practices zum sicheren Schreiben von Deserialisierungen.
In dem Bericht erfahren Sie mehr über die wichtigsten Arten von Angriffen auf den Deserialisierungsprozess, anfällige .NET-Serialisierer, welche Tools zur Suche nach Schwachstellen verwendet werden können und welche Nutzdaten für .NET-Anwendungen bekannt sind.
Die Arbeit der Tools wird übrigens anhand von Beispielen für Schwachstellen veranschaulicht, die Mikhail während seiner Teilnahme an Bug Bounty in Microsoft-Produkten gefunden hat.
Asynchrone Programmierung in .NET: Best Practices
Sprecher:
Dmitry IvanovOrt: 8
Dmitrys Bericht über das Schmerzhafte: Das Auftreten von async / await in C # führte zu einer Überprüfung, wie Programmierer anfingen, einfachen und korrekten parallelen Code zu schreiben - asynchrone Programmierung behebte nicht nur nicht viele Probleme mit Threads, sondern brachte auch viele. Und die Deadlocks und Flüge verschwanden nicht nach dem Auftreten von Async, aber es wurde viel schwieriger, sie zu bestimmen.
Dmitry spricht über die richtigen und falschen Muster für das Schreiben von asynchronem Code und die Feinheiten der Arbeit mit async / await, die Sie möglicherweise nicht kennen.
.NET-Multithreading: Wenn die Leistung knapp ist
Sprecher:
Evgeny PeshkovOrt: 7
Präsentation präsentierenZum ersten Mal sprach Eugene 2018 bei DotNext und kam sofort zu den ersten Zeilen der Bewertungen: Auch wenn über die Nützlichkeit des Studierens der Eingeweide diskutiert wird, ist Hardcore für das Contour-Infrastruktur-Team, in dem Eugene arbeitet, Leben und Leben ist Hardcore.
In dem Bericht spricht er über die Funktionen der Arbeit mit Multithreading in .NET und kombiniert die Theorie auf anmutige Weise mit praktischen Fällen, die Zhenyas Team gelöst hat. Sie werden von Fehlern und Problemen beim Verwenden von Multithreading erfahren und Beispiele dafür sehen, wann die Standardtools der .NET-Bibliothek zu Leistungseinbußen führen (und Möglichkeiten, dies zu beheben).
So erhalten Sie Ihr Microservices-System mithilfe eines Servicegitter in den Griff
Sprecher:
Edwin van WijkOrt: 6
Präsentation präsentierenEin seriöser Bericht des Leiters der DotNext-Ratings zum ordnungsgemäßen Aufbau der Infrastruktur für Microservices. In seiner Geschichte - die Implementierung des Netzes für Microservices, Routing, Leistungsschalter und andere wichtige Aspekte.
Edwin wird vorstellen, wie intelligentes Routing, Fehlertoleranz, A / B-Tests und Überwachung der Microservice-Infrastruktur implementiert und gesichert werden. Zu diesem Zweck verwendet er Istio, eine Open-Source-Lösung, die Sie auch in einem Vortrag kennenlernen werden.
Keynote: Die Kosten für Code
Sprecher:
Dylan BeattieOrt: 5
Der Abschluss des Programms war eine Keynote von Dylan Beatty, der wie ein Zauberer Mosaikstücke in Form von Memen, Code, Nachrichten und Fakten aus einem Hut zog. Und dann, wenn Sie es am wenigsten erwarten - op! Die Magie! Das Puzzle entwickelt sich zum großen philosophischen Gedanken.
In diesem Vortrag wirft Dylan Beatty einen neuen Blick auf die Kosten für Code, den Programmierer täglich an die Produktion senden. Was ist der wahre Wert der Codebasis für Organisationen, Gesellschaft und Umwelt? Wie können wir unseren Teams und Benutzern helfen, diese Kosten zu verstehen? Und was können wir tun, um sie zu reduzieren? Eine gute "Entlade" -Geschichte, die dabei hilft, zwischen Hardcore-Präsentationen zu wechseln.
Raspberry PI und .NET Core unter Linux: der schnelle Weg zum IoT
Sprecher:
Raffaele RialdiOrt: 4
Präsentation präsentierenNormalerweise beginnen die Verkäufe von Malinki nach solchen Berichten zu wachsen. Rialdi ist sehr zugänglich. Anhand von Live-Beispielen wird gezeigt, wie die neuen .NET Core-Funktionen für Linux und ARM dazu beitragen, schnell und einfach eine IoT-Anwendung zu erstellen.
Der Bericht konzentriert sich auf Probleme im Zusammenhang mit der Datenverarbeitung in Echtzeit, dem Architekturdesign und der Prozessverarbeitung. Als Beispiel sehen die Betrachter die Implementierung des eingebetteten H264-Codecs für das Streaming von Videos von einer ASP.NET Core-Anwendung zu Browsern.
Was ist neu in C # 8?
Sprecher:
Dmitry NesterukOrt: 3
Eine umfassende Geschichte über alle wichtigen und interessanten Funktionen der neuen und recht epochalen C # -Veröffentlichung. Eines der Hauptmerkmale von C # 8 ist die Entstehung nicht nullbarer Referenztypen, die das C # -Paradigma erheblich verändern. Dmitrys Geschichte, einschließlich wie sie verwendet werden können und warum sie in ihren Entwicklungen verwendet werden sollten.
Viele werden den Bericht als „Eintrittskarte“ für die neue Version verwenden können, da jede Änderung anhand von Live-Beispielen und einer Beschreibung aller Arten von Rechen erklärt wird.
Warum ist Ihre Architektur funktionsfähig und wie kann man damit leben?
Sprecher:
Roman NevolinOrt: 2
Ein einfacher und vollständiger Bericht von Roman mit traditionellen Witzen und Trolling durch den Sprecher über die Blütezeit des Funktionsparadigmas in C # und die Vorteile (und wieder den Rechen), über die jeder "Komplize" Bescheid wissen sollte.
Darüber hinaus erklärt Roman, warum Sie, selbst wenn auf Ihrem T-Shirt "Nur OOP und für immer" steht, wahrscheinlich jeden Tag einen Funktionscode schreiben, obwohl Sie nicht einmal darüber Bescheid wissen - und wie dieses Verständnis Ihnen hilft, den Code zu verbessern.
Richtig geschriebene Tiere
Sprecher:
Sergey AbdulmanovOrt: 1
Bewertung: 4.67
Und der von den Zuhörern hoch geschätzte Bericht war
Milfgards Geschichte über die biologischen Prinzipien der Kybernetik - wie Vögel nach den einfachsten Skripten handeln, Schlangen eine Reihe hochpräziser Sensoren „zusammenbauen“ und Jagdhunde „hacken“.
Und obwohl dieser Bericht exklusiv für diejenigen bleibt, die persönlich an der Konferenz teilgenommen haben, können Sie seinen Inhalt teilweise herausfinden: Sergey hat zuvor zwei Beiträge über Habré veröffentlicht, die sich weitgehend mit seiner Rede überschneiden. Dies ist eine
Analyse der technologischen Struktur der Schlange und eine
Geschichte über das Leben der Saigas. Viel Spaß beim Lesen!
Was weiter
Wenn die Berichte aus dem Beitrag für Sie interessant sind, sollten Sie zwei weitere Dinge beachten. Erstens haben wir eine
vollständige Wiedergabeliste auf YouTube veröffentlicht: Sie werden Abdulmanovs Bericht nicht darin finden, aber es gibt bis zu 27 andere.
Und zweitens wurde bereits der nächste
DotNext angekündigt: Er findet
vom 6. bis 7. November in Moskau statt . Jetzt sind auf seiner Website bereits Beschreibungen von acht Berichten
verfügbar . Wie Sie diesem Beitrag entnehmen können, werden einige Videos manchmal nicht ins Internet gestellt und bleiben exklusiv. Wenn Sie also etwas Interessantes im Programm sehen, ist es die zuverlässigste Methode, es persönlich zu besuchen!