.NET: las partes buenas: del CLR a la comunidad

¿Quieres conocer a John Galloway (Director Ejecutivo de .NET Foundation), Pavel Yosifovich (autor de los legendarios Windows Internals y los nuevos cursos en Pluralsight )? ¿O tal vez con Alex Thyssen - 12x MVP en la categoría de Visual Studio? ¿O se capacita con Conrad Cocos (autor de Pro .NET Memory Management)? Ahora tienes esa oportunidad.


La conferencia más grande para desarrolladores de .NET, DotNext 2019 Piter, se realizará del 15 al 16 de mayo en San Petersburgo. Debajo del corte habrá una revisión estructural del programa de conferencias y algunas palabras sobre la capacitación.


Una vez que Douglas Crockford escribió el libro "JavaScript: The Good Parts" y esto marcó el comienzo de muchos trabajos dedicados a destacar lo mejor en una variedad de tecnologías. En este centro, hablaremos sobre las cuatro mejores secciones de conocimiento sobre el ecosistema .NET que son relevantes en 2019.



Como saben, el trabajo de selección de informes comienza en más de seis meses. Aquí está nuestra oruga:



A medida que avanza por este camino, los cuadros en la página del programa de la conferencia se llenan un poco. Hoy es 26 de abril, solo quedan 19 días antes de la conferencia, y esta es la línea de meta. Los oradores pulen los informes a un brillo, los organizadores se preparan para la conferencia, los participantes compran boletos.


Un hecho interesante: los miembros del Comité del Programa logran no solo trabajar en su trabajo principal y hacer una conferencia, sino que inventan sus propios informes y escriben libros. Andrei Akinshin DreamWalker de JetBrains, un hombre que no necesita ser representado, logró completar el libro "Pro .NET Benchmarking" en paralelo con la preparación de la conferencia, con la cual lo felicitamos calurosamente.


Temas clave


La estructura de la conferencia no es estática. Cambia de año en año, reflejando las tendencias más importantes en el mundo del desarrollo de .NET. Puede aprender las cosas más útiles en este momento y hablar con los oradores más buscados.


En la primavera de 2019, la lista de temas principales es la siguiente:


  • Tendencias : informes geniales sobre el estado del desarrollo de .NET en general;
  • Arquitectura : todo sobre la buena arquitectura;
  • Mejores prácticas : buenas prácticas en diversos campos del desarrollo;
  • Las partes internas son las entrañas de varias tecnologías, desde compiladores hasta bibliotecas.

Tratemos cada categoría individualmente.


¡En este habropost no se cuentan todos los informes! Más bien, es una especie de resumen rápido. Usted mismo puede ver el programa completo de Pot DotNext 2019 . Le recomiendo encarecidamente que haga esto, porque no importa cuánto diga "halva", ¡su boca no será dulce!


Todo bajo el capó es el mismo hardcore, solo por el cual muchos generalmente vienen a conferencias.


Pavel Yosifovich es conocido como el autor de Windows Internals, WPF Cookbook, Mastering Windows C ++ App Development y seis cursos en Pluralsight. Si también está interesado en C ++, él también habla de ello . Además, es un conocido desarrollador, entrenador y orador, pero en este papel prácticamente no lo vimos, casi nunca sucede en Rusia. Es un gran orgullo y buena suerte que Pavel venga a DotNext por segunda vez. La vez anterior, realmente le gustó. En su nueva charla, "Construyendo sus propias herramientas de creación de perfiles y diagnóstico con Event Tracing para Windows" , hablará sobre cómo poner ETW en su servicio, y también proporcionará muchos detalles prácticos.


Christophe Nasarre es una persona increíble que, además de más de 25 años trabajando con tecnologías de Microsoft, ha sido revisor técnico en MSPress, Addison-Wesley y otras editoriales desde 1996, trabajando en libros como CLR a través de C # y las últimas ediciones de Windows Internals . Junto con Kevin Gosse, darán una poderosa charla sobre Depuración de escenarios asincrónicos en .NET . No hay nada más fácil que depurar código asincrónico, cuando dos profesionales de WinDbg y otras herramientas hablan de ello.


Andrey Karpov trabaja en JetBrains, donde participa en el soporte de lenguaje C # en los productos ReSharper y Rider. Antes de JetBrains, estuvo involucrado en la programación de bajo nivel, investigando el kernel de Windows, etc. El lenguaje C # continúa desarrollándose rápidamente. La próxima versión agrega soporte para iteradores asíncronos. Que es esto ¿Para qué es esto? Como funciona Puede aprender cómo usar transmisiones asíncronas ahora visitando la charla "Ceda ante mí, porque estoy esperando" .


Nikita Tsukanov tiene una increíble experiencia laboral. Comenzó en Navigator con el desarrollo bajo WinCE / Mobile en C / C ++, realizó un servicio VPN con un cliente multiplataforma en GTK #, la plataforma comercial Promarket, el mantenimiento de Mono para el Nokia N900, herramientas para el ajuste de chips de automóviles, un mensajero móvil con End2End -cifrado, y un montón de cosas. Su charla "Interacción orientada a objetos multiplataforma de C # y C ++" presentará una solución para la interacción transparente bidireccional entre C ++ y C # en el nivel de interfaz, que puede implementar tanto las clases C # como las clases C ++. En otras palabras, puede olvidar los horrores de C ++ / CLI y considerar una alternativa.


Evgeny Peshkov epeshk se ocupa de la infraestructura general de Kontur y desarrolla una plataforma de alojamiento de aplicaciones basada en la nube. Está interesado en el dispositivo interno de .NET y Windows y utiliza este conocimiento en la práctica. En el nuevo informe, "Multithreading en .NET: cuando falta rendimiento" , observamos los errores y problemas del uso de multithreading en .NET. Veamos algunos ejemplos cuando el uso de herramientas de la biblioteca estándar .NET condujo a reducciones de rendimiento y hablamos de soluciones adaptadas para tareas específicas y carentes de estas deficiencias.



Muchos son escépticos de los informes sobre el futuro lejano cuando las naves espaciales aran las extensiones de .NET. Afortunadamente, todo es mucho más interesante aquí, porque los informes son realizados por personas conocidas y respetadas en la comunidad que vale la pena escuchar. En los formularios de comentarios, las personas a menudo piden que venga una persona específica, y el comité del programa está tratando de cumplir estos deseos.


Por ejemplo, Dino Esposito llevará a cabo dos informes a la vez: "ASP.NET Core 3.0: Estado del arte" y "Programación 101 de ASP.NET Blazor" . En primer lugar, estos son solo temas muy populares. En segundo lugar, Dino es una persona que ha escrito más de 20 libros, menos de 1000 artículos, hizo más de 500 informes en conferencias, etc., uno de los hablantes de .NET de habla inglesa más populares. Y en tercer lugar, Dino ha hecho una sólida historia en DotNext, haciendo un informe cada año desde 2014, que incluye la apertura del primer DotNext de Moscú. Obviamente, debería hablar sobre ASP.NET Core 3.0.


Dmitry Nesteruk mezastel , que muchos en la comunidad .NET de San Petersburgo ya conocen, hablará sobre lo último en C # 8 . Por cierto, en 2014, Dmitry hizo el primer informe del primer DotNext en San Petersburgo, ¡y aquí está de nuevo con nosotros! Y Nico Vermeir hablará sobre el futuro del desarrollo de escritorio , mientras que Wesley Cabus, por el contrario, hablará sobre las pruebas de caos . En general, estos son los temas que ahora se discuten activamente en la comunidad, y es por eso que ingresaron al programa.


Por separado, quiero decir sobre John Galloway. John es director ejecutivo de la Fundación .NET, evangelista técnico en Microsoft, coautor de Professional ASP.NET MVC y tutoriales conocidos como MVC Music Store , un reconocido orador y podcast. Muchas personas ya conocen la Fundación .NET, pero no entienden exactamente qué es realmente y por qué lo saben. John revelará todas estas preguntas y le dirá cómo puede participar en esto.



La arquitectura trata sobre cómo organizar sus sistemas, qué elementos elegir y cómo deben comportarse e interactuar. Cómo ensamblar grandes de subsistemas pequeños. Cómo elegir el estilo arquitectónico correcto que guiará el desarrollo, cómo describirlo y transmitirlo, etc.


Los informes arquitectónicos se someten a una revisión particularmente rigurosa por parte del comité del programa. Si dicho informe se refiere a las prácticas desarrolladas en un proyecto, debería ser un proyecto tecnológico verdaderamente exitoso. El orador no solo debe conocer el tema, sino también explicar de manera inteligible incluso las cosas abstractas más complejas en un mínimo de tiempo (hora para el informe). En general, esta debería ser información en la que se pueda confiar, y no algo tomado del techo. La diferencia clave de, por ejemplo, la categoría Tendencias es que los efectos arquitectónicos no afectarán hoy ni mañana, y es precisamente para observar los principios que han sido probados por el tiempo que visitamos dichos informes.


Aquí es necesario mencionar, por ejemplo, el informe de Vagif Abilov VagifAbilov . Wagif ha estado trabajando para la compañía noruega Miles y su experiencia en programación abarca aproximadamente tres décadas. Ahora se dedica al desarrollo de sistemas en F # y C #, a menudo habla en conferencias, participa en proyectos de código abierto y es compatible con Simple.OData.Client. Su informe "La vida después de los objetos de negocio (confesión del veterano de la OLP)" debería ser de interés para todos los aficionados al modelado de dominios y F #. Hace unos años, cansado de las estructuras de datos mutantes, la sincronización de subprocesos y los complicados objetos comerciales, el equipo de Vagif cambió a usar F #. Este informe discutirá tanto las expectativas de tal transición como el nuevo enfoque para el modelado de dominios que han dominado. Escucharemos por separado sobre los objetos comerciales, más precisamente, sobre su ausencia, y cómo se pueden reemplazar con éxito. Dado que tales temas son a menudo controvertidos, decidimos comenzar la discusión justo durante el informe de Vagif, haciéndolo interactivo e invitando a otro orador popular, Maxim Arshinov, marshinov .


Si su proyecto no es un Legado principal, lo más probable es que tenga algún tipo de concepto arquitectónico de moda. CQRS, por ejemplo. O DDD. O tal vez Actor Model? Sin embargo, no hace ninguna diferencia: todos están conectados de alguna manera con el mundo de la programación funcional. Sobre esto, Roman Nevolin nevoroman nos contará todo en un informe con el dicho "¿Por qué es funcional su arquitectura y cómo vivir con ella ? "


Para que no piense que se trata de una especie de reunión de funcionarios y listas de F #, es necesario mencionar informes que desarrollen una discusión sobre el dilema clásico de microservicios y monolitos. Sean Farmar, de Particular Software (desarrolladores de NServiceBus) en su informe de descomposición exitosa de su monolito , mostrará no solo cómo ver un monolito, sino también cómo usar los principios DDD y SOA para simular un corte vertical simple. Konstantin Gustov continuará con el tema de DDD en su informe "DDD en microservicios: complejidad versus complejidad" .



Las mejores prácticas son una forma de formular experiencias prácticas exitosas. Si hay una manera óptima de lograr el objetivo, entonces tal vez se pueda aplicar en otros lugares. El término "mejores prácticas" fue acuñado en 1914 por Frederick Winslow Taylor , un ingeniero estadounidense, fundador de la organización científica del trabajo y la gestión. "Entre toda la variedad de métodos y herramientas utilizados en cada momento de cada proceso, siempre hay un método y herramienta que funciona más rápido y mejor que otros" . Han pasado más de cien años desde entonces, la humanidad ha hecho otro gran descubrimiento: ¡programar conferencias, la mejor manera de descubrir las mejores prácticas!


Entre los informes de este tipo, tradicionalmente hay muchos informes introductorios simples e informes aplicados. Lo más importante en ellos es transmitir claramente una idea puramente práctica para que pueda venir a trabajar en un par de días y comenzar a aplicarla. En la naturaleza de la astronáutica arquitectónica, generalmente no profundizan, para esto hay un conjunto diferente de temas.


¿A quién le gustaría ver como orador en esta categoría? Comencemos con Alex Thissen. Ha estado programando desde finales de los 90, ha trabajado como desarrollador líder en varias compañías (desde pequeñas empresas hasta grandes empresas) y ahora enseña a los desarrolladores de aplicaciones a usar las tecnologías de Microsoft, a los arquitectos para diseñar y construir aplicaciones distribuidas modernas, y desarrolla juegos en su tiempo libre. Su informe "No me siento tan bien ... Integrando controles de salud en sus soluciones .NET Core", como se esperaba, cae en la categoría de smoothie y habla de algo muy específico: puntos finales de salud en ASP.NET Core 2.2. Cómo incrustarlos, qué son en general, qué sucede con dependencias externas como bases de datos y puntos finales HTTP. Y finalmente, cómo usarlo todo en un grupo de software en contenedores.


Pero Dmitry Ivanov de JetBrains tiene un informe más pesado. "Programación asincrónica en .NET: mejores prácticas" es una historia sobre un punto doloroso. Los puntos muertos y los vuelos con el advenimiento de async / waitit no desaparecieron en ninguna parte: cavaron más profundo y se hicieron más difíciles de diagnosticar. Nadie conocerá los patrones correctos e incorrectos para escribir código asincrónico, sino el experto técnico JetBrains Rider y el desarrollador del núcleo ReSharper (estructuras de datos, cachés, subprocesos múltiples).


Para mencionar brevemente a los otros oradores, el arquitecto de soporte de información Edwin van Wijk con "Cómo controlar su sistema de microservicios usando una malla de servicio" - una historia sobre cómo implementar una malla para sus microservicios y construir cosas básicas como el enrutamiento , disyuntores, etc. Roberto Freato nos dirá cómo simplificar la vida escondiéndonos detrás de la puerta de enlace API, pero no escribiendo bicicletas en el informe "Puerta de enlace API simplificada con Ocelot y contenedores" , y Matthias Koch , el desarrollador del moderno sistema de ensamblaje NUKE, hablará sobre ello. .



El 17 de mayo, justo después del programa principal de la conferencia, se llevará a cabo la capacitación de Konrad Kokosa . Durará de 10 a 18 horas.


Esta es una capacitación de la que casi todos los desarrolladores de .NET pueden beneficiarse. Comienza con conceptos básicos sobre el tiempo de ejecución de .NET y luego pasa por varios aspectos de la administración de memoria. Tanto un desarrollador experimentado como un principiante podrán obtener mucho de la capacitación. ¡Incluso un desarrollador muy avanzado tiene algo que aprender allí!


Conrad es el autor de Pro .NET Memory Management. Durante más de una docena de años, continúa trabajando en cuestiones de rendimiento y arquitectura en el mundo .NET, incluida la aceleración de las aplicaciones web. Rendimiento y diagnóstico de aplicaciones .NET: esta es la especialización de sus entrenamientos. Conrad recibió MVP en la categoría de Visual Studio y herramientas de desarrollo y es cofundador de https://dotnetos.org .


El objetivo es que, como resultado de la capacitación, los participantes tengan una idea mucho más profunda de la administración automática de memoria en el tiempo de ejecución de .NET (tanto en Framework como en Core). Esto le permitirá escribir código que tenga en cuenta el trabajo con la memoria y diagnosticar varios problemas relacionados. Además, aquí conoceremos no solo la aplicación directa de las cosas, sino también cómo y por qué se implementaron de esta manera, y no de otra manera. Por ejemplo, veamos los detalles de la implementación del recolector de basura. Esto facilitará la resolución de una amplia gama de otros problemas que van más allá del alcance de los temas de capacitación.


Próximos pasos


Les recuerdo que la conferencia DotNext 2019 Piter se llevará a cabo del 15 al 16 de mayo en San Petersburgo. Puede familiarizarse con el programa en el sitio web oficial .


Puedes comprar boletos allí .


Tenga en cuenta que hay diferentes tipos de boletos, por ejemplo, se ofrecen descuentos para estudiantes, estudiantes graduados y maestros. Hay boletos especiales en línea para aquellos que por alguna razón no podrán llegar en vivo (obviamente, dichos participantes en una transmisión paga en línea también recibirán todo el video de la conferencia).


Es importante que a partir del 1 de mayo haya un aumento en los precios de las entradas. Desde Early Bird en diciembre de 2018, han crecido poco a poco. Queda menos de un mes antes de la conferencia, y el 1 de mayo, los precios serán finales. Si decidiste ir firmemente, entonces no tiene sentido tirar, debes tomarlo ahora.


¡Que pasen unas buenas vacaciones de mayo y nos vemos en DotNext 2019 Piter!

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


All Articles