هل ترغب في مقابلة جون جالواي (المدير التنفيذي لمؤسسة .NET Foundation) ، بافيل يوسيفوفيتش (مؤلف كتاب Windows Internals الأسطوري ودورات جديدة في Pluralsight )؟ أو ربما مع Alex Thyssen - 12x MVP في فئة Visual Studio؟ أو قم بالتدريب مع كونراد كوكوس (مؤلف إدارة الذاكرة في .NET Pro)؟ الآن لديك مثل هذه الفرصة.
سيعقد أكبر مؤتمر لمطوري .NET ، DotNext 2019 Piter ، يومي 15 و 16 مايو في سان بطرسبرغ. تحت الخفض سيكون مراجعة هيكلية لبرنامج المحاضرة وبضع كلمات عن التدريب.
مرة واحدة كتب دوغلاس كروكفورد كتاب "JavaScript: The Good Parts" ، وهذا يمثل بداية للعديد من الأعمال المخصصة لتسليط الضوء على الأفضل في مجموعة متنوعة من التقنيات. في هذا المحور ، سنتحدث عن أفضل أربعة أقسام للمعرفة حول النظام البيئي .NET ذات الصلة في عام 2019.

كما تعلمون ، يبدأ العمل في اختيار التقارير في أكثر من ستة أشهر. هنا لدينا كاتربيلر:

أثناء السير على هذا المسار ، تملأ المربعات في صفحة برنامج المؤتمر قليلاً. اليوم هو 26 أبريل ، ولم يتبق سوى 19 يومًا قبل بدء المؤتمر ، وهذا هو خط النهاية. المتحدثون تلميع التقارير إلى تألق ، المنظمون تستعد للمؤتمر ، والمشترين شراء تذاكر.
حقيقة مثيرة للاهتمام: لا يتمكن أعضاء لجنة البرنامج من العمل فقط في وظائفهم الرئيسية وعقد مؤتمر - فهم يخترعون تقاريرهم الخاصة وكتابة الكتب. تمكن Andrey Akinshin DreamWalker من JetBrains ، وهو رجل لا يحتاج إلى تمثيل ، من إكمال كتاب "Pro .NET Benchmarking" بالتوازي مع التحضير للمؤتمر ، ونحن نهنئه بحرارة!
المواضيع الرئيسية
هيكل المؤتمر ليس ثابتا. يتغير من سنة إلى أخرى ، مما يعكس أهم الاتجاهات في عالم تطوير .NET. يمكنك تعلم أكثر الأشياء المفيدة في الوقت الحالي والتحدث مع أكثر المتحدثين رواجًا.
في ربيع عام 2019 ، قائمة الموضوعات الرئيسية هي كما يلي:
- الاتجاهات - تقارير نظرة عامة رائعة عن حالة تطوير .NET بشكل عام ؛
- العمارة - كل شيء عن العمارة الجيدة ؛
- أفضل الممارسات - الممارسات الجيدة في مختلف مجالات التنمية ؛
- Internals هي مجموعة من التقنيات المختلفة ، من المجمعين إلى المكتبات.
دعونا نتعامل مع كل فئة على حدة.
في هذا habropost ليس كل التقارير يقال! بدلا من ذلك ، هو نوع من لمحة سريعة. يمكنك أنت نفسك الاطلاع على برنامج DotNext 2019 Piter الكامل . أنصحك بشدة أن تفعل هذا ، لأنه مهما قلت "الحلاوة الطحينية" ، فمك لن يكون حلوًا!

كل شيء تحت غطاء محرك السيارة هو نفس المتشددين ، فقط من أجل الكثير منهم عادة ما يأتي إلى المؤتمرات.
يُعرف Pavel Yosifovich بأنه مؤلف Windows Internals و WPF Cookbook و Mastering Windows C ++ App Development ، وست دورات في Pluralsight. إذا كنت مهتمًا أيضًا بـ C ++ ، فهو يتحدث أيضًا عن ذلك . بالإضافة إلى ذلك ، فهو مطور ومدرب ومتحدث مشهور ، لكن في هذا الدور لم نراه عملياً - إنه لم يحدث أبدًا في روسيا. إنه لفخر كبير وحظ سعيد أن بافيل يأتي إلى DotNext للمرة الثانية. في المرة السابقة ، كان يحبها حقًا. في حديثه الجديد "بناء أدوات التشخيص والتشخيص الخاصة بك مع Event Tracing for Windows" ، سيتحدث عن كيفية وضع ETW في خدمته ، وسيقدم لك أيضًا الكثير من التفاصيل العملية.
يعتبر Christophe Nasarre شخصًا رائعًا ، بالإضافة إلى أكثر من 25 عامًا من العمل مع تقنيات Microsoft ، يعمل كمراجع تقني في MSPress و Addison-Wesley وناشرين آخرين منذ عام 1996 ، ويعمل على كتب مثل CLR عبر C # وأحدث إصدارات Windows Internals . جنبًا إلى جنب مع Kevin Gosse ، سيقومون بإجراء محادثة قوية حول تصحيح السيناريوهات غير المتزامنة في .NET . لا يوجد شيء أسهل من تصحيح التعليمات البرمجية غير المتزامنة - عندما يتحدث اثنان من خبراء WinDbg وأدوات أخرى عن ذلك.
يعمل Andrey Karpov في JetBrains ، حيث يشارك في دعم لغة C # في منتجات ReSharper و Rider. قبل JetBrains ، كان يشارك في البرمجة منخفضة المستوى ، والبحث في نواة Windows ، وهلم جرا. تستمر لغة C # في التطور بسرعة. الإصدار القادم يضيف دعما للتكرارات غير المتزامنة. ما هذا ما هذا؟ كيف يعمل؟ يمكنك معرفة كيفية استخدام تدفقات المزامنة الآن من خلال زيارة الحديث "عائد مني ، لأنني أنتظر" .
نيكيتا تسوكانوف لديه خبرة عمل مذهلة. بدأ في Navigator بتطوير نظام WinCE / Mobile على C / C ++ ، وعمل خدمة VPN مع عميل عبر الأنظمة الأساسية على GTK # ، منصة تداول Promarket ، و Mono للمحافظة على Nokia N900 ، وصنع أدوات لضبط السيارات رقاقة ، رسول المحمول مع End2End التشفير ، ومجموعة من الأشياء. سيقدم حديثه "تفاعل C-و C ++ الموجه نحو وجوه النظام الأساسي" حلاً للتفاعل الشفاف ثنائي الاتجاه بين C ++ و C # على مستوى الواجهة ، والذي يمكنه تنفيذ فصول C # و C ++. بمعنى آخر ، يمكنك نسيان أهوال C ++ / CLI والنظر في بديل.
يتعامل Evgeny Peshkov epeshk مع البنية التحتية العامة في Kontur ، ويقوم بتطوير منصة استضافة التطبيقات المستندة إلى مجموعة النظراء. إنه مهتم بالجهاز الداخلي في .NET و Windows ويستخدم هذه المعرفة في الممارسة العملية. في التقرير الجديد ، "Multithreading in .NET: عندما يكون الأداء مفقودًا" ، نلقي نظرة على الأخطاء والمشاكل المتعلقة باستخدام multithreading في .NET. دعونا نلقي نظرة على بعض الأمثلة عند استخدام أدوات من مكتبة .NET القياسية أدت إلى انخفاض الأداء والتحدث عن حلول مصممة لمهام محددة وخالية من أوجه القصور هذه.

يشكك الكثيرون في التقارير حول المستقبل البعيد عندما تحرث المركبات الفضائية مساحات .NET. لحسن الحظ ، كل شيء أكثر إثارة للاهتمام هنا ، لأن التقارير يتم إجراؤها بواسطة أشخاص معروفين ومحترمين في المجتمع ممن يستحقون الاستماع إليهم. في نماذج الملاحظات ، غالبًا ما يطلب الأشخاص حضور شخص معين - وتحاول لجنة البرنامج تحقيق هذه الرغبات.
على سبيل المثال ، سيقوم Dino Esposito بإجراء تقريرين في آن واحد - "ASP.NET Core 3.0: أحدث التطورات " و "ASP.NET Blazor programming 101" . أولاً ، هذه مجرد مواضيع شائعة جدًا. ثانياً ، دينو هو الشخص الذي كتب أكثر من 20 كتابًا ، تحت 1000 مقال ، وأصدر أكثر من 500 تقرير في المؤتمرات وما إلى ذلك ، وما إلى ذلك - أحد أكثر المتحدثين باللغة الإنجليزية ناطقًا باللغة الإنجليزية. ثالثًا ، حقق Dino تاريخًا قويًا في DotNext ، حيث قام بتقديم تقرير سنويًا منذ عام 2014 ، بما في ذلك الكلمة الافتتاحية لأول موسكو DotNext. من الواضح أنه يجب أن يتحدث عن ASP.NET Core 3.0.
سيتحدث Dmitry Nesteruk mezastel ، الذي يعرفه الكثيرون في مجتمع St. Petersburg .NET بالفعل ، عن الأحدث في C # 8 . بالمناسبة ، في عام 2014 ، قدم ديمتري التقرير الأول عن أول نقطة DotNext في سان بطرسبرغ - وهو هنا معنا مرة أخرى! وسيتحدث نيكو فيرمير عن مستقبل تطوير سطح المكتب ، بينما سيتحدث ويسلي كابوس ، على العكس من ذلك ، عن اختبار الفوضى . بشكل عام ، هذه هي الموضوعات التي تمت مناقشتها الآن بفعالية في المجتمع ، وهذا هو سبب انضمامهم للبرنامج.
بشكل منفصل ، أود أن أقول عن جون جالواي. جون هو المدير التنفيذي لمؤسسة .NET Foundation ، مبشر تقني في Microsoft ، مؤلف مشارك في Professional ASP.NET MVC ، وبرامج تعليمية مشهورة مثل MVC Music Store ، متحدث شهير وبودكاست. يعرف الكثير من الناس بالفعل حول .NET Foundation ، لكنهم لا يفهمون بالضبط ما هو عليه بالفعل ولماذا يعرفون ذلك. سوف يكشف جون عن كل هذه الأسئلة ويخبرك كيف يمكنك المشاركة في هذا.

تدور الهندسة المعمارية حول كيفية تنظيم أنظمتك ، والعناصر التي تختارها ، وكيف ينبغي أن تتصرف وتتفاعل. كيفية تجميع كبيرة من النظم الفرعية الصغيرة. كيفية اختيار النمط المعماري الصحيح الذي سيوجه التطوير ، وكيفية وصفه ونقله ، وما إلى ذلك.
تخضع التقارير المعمارية لمراجعة صارمة بشكل خاص من قبل لجنة البرنامج. إذا كان هذا التقرير يشير إلى الممارسات التي تم تطويرها في المشروع ، فينبغي أن يكون مشروعًا تكنولوجيًا ناجحًا حقًا. يجب ألا يعرف المتحدث الموضوع فحسب ، بل يشرح بشكل أكثر وضوحًا حتى أكثر الأشياء المجردة تعقيدًا في أقل وقت (ساعة للتقرير). بشكل عام ، يجب أن تكون هذه معلومات يمكن الوثوق بها ، وليس شيئًا مأخوذ من السقف. يتمثل الاختلاف الرئيسي عن ، على سبيل المثال ، فئة الاتجاهات في أن التأثيرات المعمارية لن تؤثر اليوم أو غدًا ، وعلى وجه التحديد أن ننظر إلى المبادئ التي تم اختبارها في الوقت الذي نزور فيه هذه التقارير.
هنا من الضروري أن نذكر ، على سبيل المثال ، تقرير Vagif Abilov VagifAbilov . يعمل واجف في شركة مايلز النرويجية وتجربته في مجال البرمجة تمتد نحو ثلاثة عقود. الآن يشارك في تطوير النظم في F # و C # ، وغالبًا ما يتحدث في المؤتمرات ، ويشارك في مشاريع مفتوحة المصدر ويدعم Simple.OData.Client. يجب أن يكون تقريره "الحياة بعد الأشياء التجارية (اعتراف المخضرم في منظمة التحرير الفلسطينية)" ذا أهمية لكل شخص مغرم بنمذجة المجال و F #. قبل بضع سنوات ، بعد أن تعبت من تغيير بنية البيانات وتزامن الخيط والأشياء التجارية المرهقة ، تحول فريق Vagif إلى استخدام F #. سيناقش هذا التقرير كلاً من توقعات مثل هذا الانتقال والنهج الجديد لنمذجة المجال التي أتقنها. سنستمع بشكل منفصل إلى عناصر الأعمال - بشكل أكثر دقة ، عن غيابها - وكيف يمكن استبدالها بنجاح. نظرًا لأن هذه الموضوعات غالبًا ما تكون مثيرة للجدل ، فقد قررنا أن نبدأ المناقشة مباشرةً خلال تقرير Vagif ، مما يجعلها تفاعلية ودعوة متكلم شهير آخر ، وهو Maxim Arshinov ، marshinov .
إذا لم يكن مشروعك إرثًا رئيسيًا ، فغالبًا ما يحتوي على مفهوم معماري عصري. CQRS ، على سبيل المثال. أو DDD. أو ربما الممثل النموذجي؟ ومع ذلك ، فإنه لا يوجد فرق - جميعها مرتبطة بطريقة أو بأخرى مع عالم البرمجة الوظيفية. حول هذا الموضوع ، سيقول لنا رومان نيفولين نيفورومان كل شيء في تقرير مكتوب عليه "لماذا تعمل الهندسة المعمارية الخاصة بك وكيف تتعايش معها" .
حتى لا تعتقد أن هذا هو نوع من جمع الموظفين والموظفين التابعين لـ F # ، فمن الضروري أن نذكر التقارير التي تطور مناقشة المعضلة الكلاسيكية المتمثلة في الخدمات الصغيرة والمتجانسة. سيُظهر Sean Farmar of Particular Software (مطورو NServiceBus) في تقريره المتحلل بنجاح تقرير متراصة ليس فقط كيفية رؤية متراصة ، ولكن أيضًا كيفية استخدام مبادئ DDD و SOA لمحاكاة خفض رأسي بسيط. سيتم متابعة موضوع DDD من قِبل قسطنطين غوستوف في تقريره "DDD في الخدمات الصغيرة: التعقيد مقابل التعقيد" .

أفضل الممارسات هي وسيلة لصياغة تجارب عملية ناجحة. إذا كانت هناك طريقة مثالية لتحقيق الهدف ، فربما يمكن تطبيقه في أماكن أخرى. صاغ مصطلح "أفضل ممارسة" في عام 1914 من قبل فريدريك وينسلو تايلور ، وهو مهندس أمريكي ، مؤسس المنظمة العلمية للعمل والإدارة. "من بين مجموعة كاملة من الأساليب والأدوات المستخدمة في كل لحظة من كل عملية ، هناك دائمًا طريقة وأداة واحدة تعمل بشكل أسرع وأفضل من غيرها" . لقد مر أكثر من مائة عام منذ ذلك الحين ، وقد حققت البشرية بعد اكتشاف عظيم آخر - مؤتمرات البرمجة ، وأفضل طريقة لاكتشاف أفضل الممارسات!
بين التقارير من هذا النوع ، هناك العديد من التقارير التمهيدية البسيطة والتقارير المطبقة. الشيء الأكثر أهمية فيها هو نقل فكرة عملية بحتة بحيث يمكنك العمل في غضون يومين والبدء في تطبيقها. في براري الملاحة الفضائية المعمارية ، عادة لا تتعمق ، فهناك مجموعة مختلفة من الموضوعات.
من تريد أن تراه متكلمًا في هذه الفئة؟ لنبدأ مع أليكس ثيسن. لقد عمل على البرمجة منذ أواخر التسعينيات ، وعمل كمطور رائد في العديد من الشركات (من الشركات الناشئة الصغيرة إلى الشركات الضخمة) ويعلم الآن مطوري التطبيقات استخدام تقنيات Microsoft والمهندسين المعماريين لتصميم وبناء التطبيقات الموزعة الحديثة وتطوير الألعاب في أوقات فراغهم. تقريره "لا أشعر أنني بحالة جيدة ... دمج الفحوصات الصحية في حلول .NET Core الخاصة بك" ، كما هو متوقع ، يندرج في فئة المعسول ويتحدث عن شيء محدد للغاية: نقاط النهاية الصحية في ASP.NET Core 2.2. كيفية تضمينها ، ما هي بشكل عام ، ماذا يحدث للتبعيات الخارجية مثل قواعد البيانات ونقاط النهاية HTTP. وأخيرًا ، كيفية استخدام كل شيء على مجموعة من البرامج ذات الحاوية.
لكن ديمتري إيفانوف من JetBrains لديه تقرير أثقل. "البرمجة غير المتزامن في .NET: أفضل الممارسات" هي قصة حول نقطة حساسة. الجمود والرحلات الجوية مع ظهور المتزامن / تنتظر لم تختف في أي مكان - أنها حفر أعمق وأصبحت أكثر صعوبة في التشخيص. لن يتم إخبار الأنماط الصحيحة وغير الصحيحة لكتابة التعليمات البرمجية غير المتزامنة من قِبل أي شخص ، ولكن بواسطة الخبير الفني JetBrains Rider ومطور ReSharper kernel (بنيات البيانات ، ذاكرات التخزين المؤقت ، multithreading).
ذكر بإيجاز المتحدثين الآخرين ، المهندس المعماري لـ Info Support Edwin van Wijk مع "كيفية الحصول على السيطرة على نظام الخدمات المصغرة الخاص بك باستخدام شبكة خدمة" - قصة حول كيفية تنفيذ شبكة للخدمات الميكروية الخاصة بك وبناء أشياء أساسية مثل التوجيه ، قواطع الدوائر الكهربائية وهلم جرا. سوف يخبرنا روبرتو فريتو بكيفية تبسيط الحياة من خلال الاختباء وراء بوابة API ، ولكن لن يكتب الدراجات في التقرير "بوابة API أصبحت سهلة مع Ocelot والحاويات" ، وسيتحدث ماتياس كوتش ، مطور نظام التجميع الحديث NUKE ، عن ذلك .

في 17 مايو ، مباشرة بعد برنامج المؤتمر الرئيسي ، سيتم عقد تدريب Konrad Kokosa . وسوف تستمر من 10 إلى 18 ساعة.
هذا تدريب يستفيد منه كل مطور .NET تقريبًا. يبدأ بمفاهيم أساسية حول وقت تشغيل .NET ثم يمر بمجموعة من جوانب إدارة الذاكرة. سيكون بإمكان كل من المطورين ذوي الخبرة والمبتدئين الحصول على الكثير من التدريب. حتى مطور متقدم للغاية لديه شيء لتعلم هناك!
كونراد مؤلف برنامج Pro .NET Memory Management. لأكثر من اثنتي عشرة عامًا ، استمر في العمل على مشاكل الأداء والهندسة المعمارية في عالم .NET ، بما في ذلك تسريع تطبيقات الويب. الأداء والتشخيص لتطبيقات .NET - هذا هو التخصص من تدريباته. تلقى كونراد MVP في فئة أدوات Visual Studio و Development وهو المؤسس المشارك لـ https://dotnetos.org .
والهدف من ذلك هو أنه نتيجة لهذا التدريب ، يحصل المشاركون على فكرة أعمق بكثير عن الإدارة التلقائية للذاكرة في وقت تشغيل .NET (في كل من Framework و Core). سيتيح لك ذلك كتابة التعليمات البرمجية التي تراعي العمل مع الذاكرة وتشخيص المشكلات المختلفة ذات الصلة. علاوة على ذلك ، سوف نتعرف هنا ليس فقط على التطبيق المباشر للأشياء ، ولكن أيضًا كيف وكيف تم تنفيذها بهذه الطريقة ، وليس بطريقة أخرى. على سبيل المثال ، دعنا نتطرق إلى تفاصيل تطبيق أداة تجميع مجمعي البيانات المهملة. هذا سيجعل من السهل حل مجموعة واسعة من القضايا الأخرى التي تتجاوز موضوعات التدريب.
الخطوات التالية
أود أن أذكركم بأن مؤتمر DotNext 2019 Piter سيعقد من 15 إلى 16 مايو في سان بطرسبرغ. يمكنك التعرف على البرنامج على الموقع الرسمي .
يمكنك شراء التذاكر هناك .
لاحظ أن هناك أنواعًا مختلفة من التذاكر - على سبيل المثال ، يتم تقديم خصومات للطلاب وطلاب الدراسات العليا والمعلمين. هناك تذاكر خاصة عبر الإنترنت لأولئك الذين لن يتمكنوا لسبب ما من الوصول مباشرة (من الواضح أن هؤلاء المشاركين في البث عبر الإنترنت المدفوع سيحصلون أيضًا على جميع مقاطع الفيديو من المؤتمر).
من المهم أنه من 1 مايو ستكون هناك زيادة في أسعار التذاكر. منذ أوائل الطيور في ديسمبر 2018 ، نمت قليلاً. يتبقى أقل من شهر قبل المؤتمر ، وفي 1 مايو ، ستكون الأسعار نهائية. إذا قررت المغادرة بشدة ، فليس من المنطقي الانسحاب ، فأنت بحاجة إلى ذلك الآن.
أتمنى لك عطلة سعيدة في أيار (مايو) المقبل ونراكم في DotNext 2019 Piter!