Grande pensée philosophique: Top 10 des discussions Piter de DotNext 2019



Bonjour, Habr! En mai, notre grande conférence .NET a eu lieu, où il y avait une place pour le hardcore, les tendances, l'architecture et juste les bonnes pratiques.

Et maintenant, nous partageons les meilleurs rapports (selon l'audience de la conférence), dont vous:

  • Vous apprendrez pourquoi (très probablement) vous écrivez du code fonctionnel sans même le savoir;
  • Plongez-vous dans la programmation asynchrone;
  • entendre sous une forme accessible les vulnérabilités de désérialisation;
  • Obtenez des informations complètes sur les changements spectaculaires apportés par C # 8 avec les types de référence non nullables;
  • voulez acheter un Raspberry Pi;
  • en savoir plus sur le "vrai" coût du code.

Il y a une mise en garde: cette fois, une situation particulière s'est présentée avec le rapport du leader. Premièrement, il n'est pas dédié à .NET, et deuxièmement, nous ne pouvons pas partager son enregistrement vidéo (selon les conditions de performance). Pour compenser cela, nous avons ajouté la 11e place au post - donc sous la coupe, vous pouvez toujours voir des vidéos de 10 excellents rapports sur le développement .NET. C'est parti!

Tous les rapports sont classés par ordre croissant, mais les différences entre les notes sont extrêmement minimes - même à la dixième place, le rapport a reçu plus de 4,1 points, ce qui n'arrive pas à chaque conférence. De plus, l'ordre dépend en partie de la formule à calculer (s'il faut considérer le nombre d'avis). En général, l'essentiel est qu'il n'y a pas de mauvaises performances ici - vous pouvez tout regarder en toute sécurité.

Débogage de scénarios asynchrones dans .NET


Conférencier: Kevin Gosse, Christophe Nasarre
Emplacement: 11


"Même s'il n'y avait pas eu un seul rapport en plus de cela, le konf serait déjà passé en vain", écrivent les auditeurs de cette paire de discours sur le débogage du code asynchrone.

Deux fanatiques de la technologie (dans le bon sens du terme), à ​​l'aide d'exemples pratiques, expliquent comment tout peut mal se passer en asynchrone / attendre, même si vous pensez que vous savez tout à ce sujet - et ensemble ils analysent les principaux modèles qui peuvent ne pas fonctionner correctement.



Je ne me sens pas si bien ... Intégration des bilans de santé dans vos solutions .NET Core


Conférencier: Alex Thissen
Emplacement: 10
Présentation du rapport


Les smoothies rendent compte des points de terminaison d'intégrité dans ASP.NET Core 2.2: comment les intégrer, ce qu'ils sont, ce qui arrive aux dépendances externes comme les bases de données et les points de terminaison HTTP, et comment utiliser tout cela sur un cluster de logiciels conteneurisés.

Le rapport de Tisen est remarquable pour sa proximité avec la production, et ses exemples de solutions vont plus loin que les exemples MSDN et peuvent facilement être appliqués à des projets du monde réel.



Vulns de désérialisation: passé, présent et futur


Conférencier: Mikhail Shcherbakov
Emplacement: 9


Les experts en sécurité sont toujours à la pièce. Et telle que profonde et pertinente, et la salle ne s'est pas endormie - et donc du tout l'après-midi avec le feu. Michael met le sujet des vulnérabilités dans les désérialisateurs sur les étagères et partage les meilleures pratiques sur la façon d'écrire la désérialisation en toute sécurité.

À partir du rapport, vous découvrirez les types d'attaques les plus importants contre le processus de désérialisation, les sérialiseurs .NET vulnérables, quels outils peuvent être utilisés pour rechercher des vulnérabilités et quelles charges utiles sont connues pour les applications .NET.

Le travail des outils, soit dit en passant, est illustré par des exemples de vulnérabilités trouvées par Mikhail dans les produits Microsoft lors de sa participation au bug bounty.



Programmation asynchrone dans .NET: meilleures pratiques


Conférencier: Dmitry Ivanov
Emplacement: 8


Le rapport de Dmitry sur le douloureux: l'apparition de async / wait en C # a conduit à un examen de la façon dont les programmeurs ont commencé à écrire du code parallèle simple et correct - la programmation asynchrone non seulement n'a pas résolu de nombreux problèmes avec les threads, mais en a également apporté beaucoup. Et les impasses et les vols n'ont pas disparu après l'apparition de l'async, mais il est devenu beaucoup plus difficile de les déterminer.

Dmitry parle des modèles corrects et incorrects pour écrire du code asynchrone et des subtilités de travail avec async / wait, que vous ne connaissez peut-être pas.



Multithreading .NET: lorsque les performances sont insuffisantes


Conférencier: Evgeny Peshkov
Emplacement: 7
Présentation du rapport




Pour la première fois, Eugene a parlé à DotNext en 2018 et est immédiatement entré dans les premières lignes des notes: même s'il y a un débat sur l'utilité d'étudier les tripes, mais pour l'équipe d'infrastructure Contour, où travaille Eugene, le hardcore est la vie et la vie est hardcore.

Dans le rapport, il parle des caractéristiques du travail avec le multithreading dans .NET, combinant gracieusement la théorie avec des cas pratiques que l'équipe de Zhenya a résolus. Vous entendrez parler de bogues et de problèmes liés au multithreading et vous verrez des exemples de cas où les outils de bibliothèque .NET standard entraînent une baisse des performances (et des moyens de résoudre ce problème).



Comment maîtriser votre système de microservices à l'aide d'un maillage de service


Conférencier: Edwin van Wijk
Emplacement: 6
Présentation du rapport



Un rapport sérieux du leader des évaluations DotNext sur la façon de construire correctement l'infrastructure pour les microservices. Dans son histoire - la mise en œuvre du maillage pour les microservices, le routage, les disjoncteurs et d'autres aspects importants.

Edwin présentera comment implémenter le routage intelligent, la tolérance aux pannes, effectuer des tests A / B et la surveillance de l'infrastructure de microservices, ainsi que la sécuriser. Pour ce faire, il utilise Istio, une solution open source à laquelle vous serez également initié lors d'une conférence.




Keynote: Le coût du code


Conférencier: Dylan Beattie
Emplacement: 5



La clôture du programme a été prononcée par Dylan Beatty, qui, comme un magicien, a sorti des morceaux d'une mosaïque d'un chapeau sous la forme de mèmes, de code, de nouvelles, de faits. Et puis, quand vous vous y attendez le moins - op! La magie! Le puzzle se transforme en Grande Pensée Philosophique.

Dans cet exposé, Dylan Beatty jette un regard neuf sur le coût du code que les programmeurs envoient quotidiennement en production. Quelle est la valeur réelle de la base de code pour les organisations, la société, l'environnement? Comment pouvons-nous aider nos équipes et nos utilisateurs à comprendre ces coûts? Et que pouvons-nous faire pour les réduire? Une bonne histoire de «déchargement» qui aidera à rompre entre les présentations hardcore.



Raspberry PI et .NET Core sous Linux: la voie rapide vers l'IoT


Conférencier: Raffaele Rialdi
Emplacement: 4
Présentation du rapport



Habituellement, après de tels rapports, les ventes de Malinki commencent à augmenter. Rialdi est très accessible, avec des exemples en direct qui expliquent comment les nouvelles fonctionnalités .NET Core pour Linux et ARM aident à créer rapidement et facilement une application IoT.

Le rapport se concentre sur les problèmes liés au traitement des données en temps réel, à la conception de l'architecture et au traitement des processus, et à titre d'exemple réel, les téléspectateurs verront la mise en œuvre du codec H264 intégré pour la diffusion vidéo d'une application ASP.NET Core vers les navigateurs.



Nouveautés de C # 8


Conférencier: Dmitry Nesteruk
Emplacement: 3



Une histoire complète sur toutes les fonctionnalités cardinales et intéressantes de la nouvelle version C # assez épique. L'une des principales caractéristiques de C # 8 est l'émergence de types de référence non annulables, qui changent considérablement le paradigme C #. L'histoire de Dmitry, y compris comment ils peuvent être utilisés et pourquoi ils devraient être utilisés dans leurs développements.

Beaucoup pourront utiliser le rapport comme un «ticket d'entrée» pour la nouvelle version, car chaque changement est expliqué par des exemples en direct et une description de toutes sortes de râteaux.



Pourquoi votre architecture est-elle fonctionnelle et comment vivre avec?


Conférencier: Roman Nevolin
Place: 2



Un rapport facile et complet de Roman avec des blagues traditionnelles et la pêche à la traîne par le haut-parleur sur l'apogée du paradigme fonctionnel en C # et les avantages (et encore le rake) que chaque "complice" devrait connaître.

De plus, Roman explique pourquoi, même si "OOP seulement et pour toujours" est écrit sur votre T-shirt, vous écrivez probablement un code fonctionnel tous les jours, bien que vous ne le sachiez même pas - et comment cette compréhension vous aidera à améliorer le code.



Animaux correctement écrits


Conférencier: Sergey Abdulmanov
Emplacement: 1
Évaluation: 4.67

Et le rapport très apprécié par les auditeurs était l'histoire de milfgard sur les principes biologiques de la cybernétique - comment les oiseaux agissent selon les scripts les plus simples, les serpents «ont assemblé» un ensemble de capteurs de haute précision et «piraté» les chiens de chasse.

Et bien que ce rapport restera exclusif pour ceux qui ont assisté personnellement à la conférence, vous pouvez en découvrir partiellement le contenu: Sergey a déjà publié deux articles sur Habré, qui chevauchent largement son discours. Il s'agit d'une analyse de la structure technologique du serpent et d'une histoire sur la vie des saigas. Bonne lecture!

Et ensuite


Si les rapports de la poste vous intéressent, vous devez faire attention à deux autres choses. Premièrement, nous avons publié une liste de lecture complète sur YouTube: vous ne trouverez pas le rapport d'Abdulmanov, mais il y en a jusqu'à 27 autres.

Et deuxièmement, le prochain DotNext a déjà été annoncé: il se tiendra à Moscou du 6 au 7 novembre . Maintenant, sur son site Web, les descriptions de huit rapports sont déjà disponibles . Comme vous pouvez le voir dans ce post, parfois certaines vidéos ne sont pas diffusées sur Internet, restant exclusives. Donc, si vous voyez quelque chose d'intéressant dans le programme, la méthode la plus fiable est de le visiter personnellement!

Source: https://habr.com/ru/post/fr463919/


All Articles