ما الجديد في فيجوال ستوديو 2022؟

فيجوال ستوديو 2022 لقد تم الآن إصداره رسميًا بجانب .NET 6 الذي يدعمه. وهو يتضمن العديد من الميزات والتحسينات الجديدة، مثل AI IntelliCode الذي يمكنه إكمال أجزاء من التعليمات البرمجية تلقائيًا نيابةً عنك.




أنت تستطيع قم بتنزيل المثبت من موقعهم على الانترنت. على الرغم من أنه لا يزال جديدًا، إلا أنه لا يزال Visual Studio إلى حد كبير، لذلك ما لم تعتمد على الملحقات التي لم يتم تحديثها بعد، فلا تخف من تجربتها.

سنقوم بتغطية أهم التغييرات التي وجدناها، ولكن إذا كنت تريد قراءة ملاحظات التصحيح سطرًا تلو الآخر، يمكنك القيام بذلك من مستندات Microsoft. هناك أيضا خارطة الطريق وصف الاتجاه العام.


إنها أخيرًا 64 بت

كان Visual Studio دائمًا 32 بت، مما يعني أنه يقتصر على 4 جيجابايت من ذاكرة الوصول العشوائي في العملية الرئيسية. عادةً لا تتجاوز هذه الميزانية بالنسبة للمشاريع العادية، ولكن قد يواجه بعض المستخدمين استثناءات نفاد الذاكرة مع حلول كبيرة بشكل خاص.

مع VS 2022، تم إصلاح الأمر، وهو الآن تطبيق 64 بت. لقد قامت Microsoft باختبار مشاريع تحتوي على 1600 مشروع و300 ألف ملف، وهي تعمل بشكل جيد.


من المفترض نظريًا أن يعمل الإصدار 64 بت بشكل أسرع، ويبدو أنه أسرع قليلاً في أوقات بدء التشغيل، لكن Microsoft تعمل أيضًا على الأداء بشكل عام، لذلك من الصعب معرفة مدى تأثير ذلك فعليًا عليه. وفي كلتا الحالتين، تغيير جيد.

بالطبع، لا يزال بإمكانك تطوير تطبيقات 32 بت باستخدام VS 2022. وهذا ينطبق فقط على المحرر.

الذكاء الاصطناعي IntelliCode مذهل

مميزات فيجوال ستوديو 2022 ترقية جادة لمحرك الإكمال التلقائي IntelliCode الخاص بهم. إنه قادر على الإكمال التلقائي لسطور كاملة وأجزاء من التعليمات البرمجية، ويعمل بشكل جيد للغاية.

انها مختلفة قليلا عن مساعد الطيار على جيثب، الذي يقوم بعمل مماثل. سيقوم Copilot بإنشاء مقتطفات كاملة من التعليمات البرمجية، ويعمل بشكل أفضل مع الوظائف الصغيرة المتضمنة مع حل واضح. إنه أمر رائع، لكن لديه مشاكله الخاصة، معظمها حقيقة أن الكود الذي ينشئه ليس مضمونًا حتى أن يكون ما تريده (ويمكن سحب الكود كلمة بكلمة من مستودعات GitHub العشوائية، وهي مشكلة أخرى تمامًا).

يتبع IntelliCode نهجًا أكثر تقييدًا، ويكمل ببساطة سطرًا واحدًا، مع مراعاة بعض العوامل التالية:


  • أسماء ومناصب متغيرة
  • المكتبات التي تستخدمها
  • وظائف في التعليمات البرمجية المحيطة بها
  • القائمة المنسدلة IntelliSense، والتي يمكنك وضعها في الأسفل لإعطاء IntelliCode المزيد من الاقتراحات

بعد استخدامه لمدة أسبوعين، إنه حقًا شيء يجب عليك تجربته بنفسك. إنه ذكي بشكل مثير للصدمة، وفي كثير من الأحيان أثناء استخدامه وجدت نفسي أفكر “رائع، كنت على وشك كتابة ذلك!”

على سبيل المثال، كتابة دالة تأخذ رقمًا من 1 إلى 12:

/wordpress/wp-content/uploads/csit/2021/08/67b8f1a2.png

لفهم هذه النتيجة وتقديمها، يقوم IntelliCode بأكثر من مجرد إكمال بناء الجملة تلقائيًا؛ إنه يفهم أنني أتوقع استثناءً، وهذا واضح جدًا نظرًا لأنني أكتب “رمي”، ويمكنه معرفة أن هذا الاستثناء يتم طرحه فقط في حالة فشل مقارنة حجم عدد صحيح. إنه يعرف ذلك


Width 

هي وسيطة يتم التحقق منها قبل تشغيل الكود، وأنني أطرح استثناءً لأن هناك خطأ ما في الوسيطة.

بمعرفة كل هذا، يتطلب الأمر تخمينًا دقيقًا للغاية لنواياي ويقرر ذلك

ArgumentOutOfRangeException 

يجب أن يكون هذا هو ما أحاول كتابته، حتى قبل أن أتمكن من البدء في كتابة “جديد”.

وإذا قمت بالصفحة لأسفل، يمكنك ملء النتائج لخيارات مختلفة. لا يزال الأمر غير متسق بعض الشيء (قررت ترميز “العرض” ثم استخدامه لاحقًا

nameof 

) ولكن عموما، فإنه يعمل بشكل جيد.

/wordpress/wp-content/uploads/csit/2021/08/8e654f08.png

يعمل IntelliCode طوال الوقت، وكل ما عليك فعله هو الضغط على tab-tab لقبوله، وإلا يمكنك الاستمرار في الكتابة. حاليًا، يعمل فقط مع لغة C#، ولكن المزيد من اللغات “ستتوفر قريبًا”.


دعم نت 6

.NET 6 هو الإصدار الأحدث. يحتوي VS 2022 على دعم مدمج له ولجميع ميزاته، والإعدادات الافتراضية هي .NET 6 للمشاريع الجديدة.

والجدير بالذكر أن VS 2022 يتمتع بدعم كامل لـ .NET MAUI، أو واجهة المستخدم للتطبيقات متعددة المنصات، وهو معيار Microsoft الجديد لتطوير التطبيقات الأصلية عبر الأنظمة الأساسية.

/wordpress/wp-content/uploads/csit/2021/08/95a2f702.png

.NET إعادة تحميل الساخنة

من أكثر الأشياء المزعجة في البرمجة هو التحديق في شاشتك، وانتظار تجميع تطبيقك وتشغيله، وتحديثه بأحدث التغييرات. تعد Hot Reloading إحدى ميزات العديد من اللغات الأخرى مثل JavaScript، وقد تم استخدامها بواسطة أطر عمل الويب مثل React لإجراء تغييرات سريعة. ومع ذلك، حتى الآن، لم يكن هناك حل موحد لـ .NET.


إنه ليس عالميًا تمامًا، ويتطلب إعداد مشروع محدد، ولكن VS 2022 يتضمن إعادة التحميل السريع لـ “WPF، وWindows Forms، ومعاينات .NET MAUI، والتطبيقات ASP.NET Core، وتطبيقات وحدة التحكم، وWinUI 3، وغيرها الكثير.” وهذا يستثني مكتبات الفئات التي يستخدمها تطبيق آخر.

قد لا يتم تطبيق أنواع معينة من التغييرات بشكل صحيح، مما سيطالبك بإجراء إعادة تشغيل مناسبة. يمكنك عرض القائمة الكاملة لهم هنا، ولكن جوهر الأمر هو:

  • لا يوجد تعديل لتوقيعات الطريقة
  • لا إضافة باستخدام البيانات
  • لا واجهات تعديل
  • ممنوع إعادة تسمية الأعضاء من أي نوع

في الأساس، يمكنك تعديل التعليمات البرمجية بأي طريقة، ولكن بمجرد البدء في لمس بنية المشروع، قد تضطر إلى إعادة التشغيل.

لقد تم دمجه بشكل جيد في تجربة تصحيح أخطاء VS، مع أيقونة جديدة لـ “تطبيق تغييرات التعليمات البرمجية” التي ستؤدي إلى إعادة التحميل السريع. يمكنك أيضًا استخدام الجديد

dotnet watch 

أمر لإعادة التحميل تلقائيًا عند تغيير الملف.


/wordpress/wp-content/uploads/sites/10/2021/05/dotnet-Hot-Reload-VS-2019-version-16_11.gif

يمكن لتطبيقات الويب Razor/Blazor حاليًا الاستفادة من إعادة التحميل السريع.

الاختبار عن بعد

يتضمن VS 2022 معاينة تجريبية تسمح لك بإجراء الاختبارات في بيئات أخرى، بما في ذلك حاويات Linux وWSL وحتى عبر SSH.

/wordpress/wp-content/uploads/csit/2021/08/85d1a24f.png

إنه يحتوي على القليل من الإعداد، وستحتاج بالطبع إلى التأكد من تهيئة بيئتك لتشغيل التعليمات البرمجية الخاصة بك بشكل صحيح، ولكن بمجرد ذلك، ستتمكن من تحديد بيئات مختلفة عند تشغيل اختباراتك.


تحسينات عامة

هناك الكثير من التغييرات الصغيرة تقسيم من ملاحظات التصحيح، لذلك سنقوم بإدراج بعض من أكثرها إثارة للاهتمام هنا.

شهد تصحيح الأخطاء بعض التحسينات في نوعية الحياة، مع خيارات سياق جديدة لنقاط توقف أكثر تقدمًا، بالإضافة إلى “Force Run To Cursor”، الذي سيتجاهل جميع نقاط التوقف الموجودة ويتوقف عند سطر التعليمات البرمجية الذي حددته. يمكن أن يكون هذا مفيدًا جدًا إذا كنت ترغب في اختبار شيء ما دون إزالة كل نقطة توقف، أو تخطي كل شيء يدويًا مرة أخرى.

قائمة سياق نقطة التوقف

فرض التشغيل على المؤشر


تدعم الآن عمليات تكامل VS’s Git مستودعات متعددة لكل حل، كما أصبح الالتزام عبر العديد من عمليات إعادة الشراء أسهل الآن.

/wordpress/wp-content/uploads/csit/2021/08/f5f66319.png

تم إعادة تصميم جميع الرموز لتحقيق الاتساق.

أمثلة على الأيقونات الجديدة ذات الخلفيات الداكنة والفاتحة

تدعم تعليقات XML الآن التعليقات متعددة الأسطر مع الحفاظ على المسافة البيضاء وكتل CDATA.

تحافظ المعلومات السريعة لـ XML على المسافة البيضاء


لم يعد “البحث عن كافة المراجع” ينتج عنه مخرجات متكررة غير مرغوب فيها عندما تكون في مشروع متعدد الأهداف.

ابحث عن كافة المجموعات المرجعية للمشاريع متعددة الأهداف

حصلت Razor Pages/Blazor على العديد من عمليات تكامل التحرير، وستعمل الآن بشكل أفضل مع IntelliSense، وتمييز بناء الجملة، وتنسيق أفضل في كتل @code. يمكنك الآن أيضًا استخدام “عرض الكود” في ملفات Razor، والذي كان قيدًا مزعجًا لفترة من الوقت.

دعم تصنيف TagHelpers


وهناك عدد قليل من قوالب المشاريع، بما في ذلك تطبيقات Angular وتطبيقات React المستضافة في ASP.NET Core، والتي يمكن إجراؤها باستخدام تكاملات واجهة برمجة التطبيقات (API) تلقائيًا.

/wordpress/wp-content/uploads/csit/2021/08/1f455f49.png

للحصول على القائمة الكاملة للتغييرات، يمكنك الرجوع إلى ملاحظات إصدار VS 2022.

(علامات للترجمة) البرمجة (ر) Microsoft

أضف تعليق