ما هو بليزر؟
Blazor (Browser + Razor) هو إطار عمل ويب جديد أصدرته شركة Microsoft. يسمح لك بإنشاء تطبيقات قائمة على المستعرض باستخدام بناء جملة C # و Razor بالإضافة إلى HTML و CSS.
في السابق ، كان على أي شخص يستخدم Razor تشغيل طرق عرض Razor على الخادم ، وبالتالي إنشاء HTML يمكن عرضه بواسطة المتصفح. الآن ، يمكن تنفيذ عروض Razor من جانب العميل.
نظرًا لأن Blazor يستخدم WebAssembly ، فلن نحتاج إلى تثبيت أي مكونات إضافية أو وظائف إضافية تابعة لجهات خارجية في المتصفح لتنفيذ التعليمات البرمجية المقابلة. نتيجة لذلك ، اتضح أنه باستخدام Blazor ، يمكنك إنشاء أجزاء العميل والخادم من تطبيقك في C #. القدرة على مشاركة التعليمات البرمجية والمكتبات على العميل وعلى الخادم تجعل حياة المطور أسهل بكثير.
إليك بعض التعليمات البرمجية النموذجية المستخدمة في Blazor.

كود بليزر
لماذا هناك ضجة كبيرة حول Blazor؟
اكتسب Blazor شعبية كبيرة في وقت قصير إلى حد ما. بدأوا في مقارنتها بأطر JavaScript الشائعة. هناك الكثير من الحديث على الإنترنت حول مستقبل تطوير الويب من جانب العميل ، وقد تم ذكر Blazor أيضًا في تلك المحادثات. كل هذا يضيف فقط إلى شعبيته. أقترح أن أفهم أسباب ذلك وأتحدث عن سبب تركيز هذا القدر من الاهتمام على Blazor.
كما قلت من قبل ، تكمن قوة Blazor الرئيسية في قدرته على تطوير التطبيقات المستندة إلى المتصفح في C #. في السنوات الأخيرة ، كانت JavaScript (أو TypeScript) هي اللغة الأساسية لتطوير تطبيقات الويب من جانب العميل. أي ، إذا كان شخص ما مبرمج .NET ، من أجل تطوير تطبيقات كاملة المكدس للويب ، فإنه يحتاج إلى تعلم JavaScript. وباستخدام Blazor ، يمكنك كتابة تطبيقات الويب الأمامية والخلفية في C #. بالنسبة لي شخصيا ، هذه هي القوة الرئيسية لبلازور.
الكود المكتوب لـ Blazor ، على عكس كود JavaScript ، يتم ترجمته مسبقًا إلى تنسيق وسيط قبل أن يصل إلى المتصفح. تمنحنا هذه الميزة بعض الميزات الرائعة عند تطوير تطبيقات متصفح كثيفة الأداء. وإلى جانب ذلك ، فإن تطبيقات Blazor مناسبة لحل المهام كثيفة الاستخدام للموارد على العميل. على سبيل المثال - لإنشاء ملفات PDF أو لجعل خوارزميات اللعبة تعمل.
ولكن بصرف النظر عما سبق ، فإن Blazor لديها ميزات أخرى مثيرة للاهتمام:
- لا تحتاج إلى مكونات إضافية للمتصفح لجعل Blazor يعمل.
- عند تطوير برنامج Blazor ، يمكنك تصحيح أخطاء كود .NET بالكامل.
- يستفيد إطار العمل من أحدث إمكانيات المتصفح.
- يحافظ Blazor على نموذج تطوير واجهة سهل الاستخدام.
- الإطار لديه دعم متصفح جيد.
- يدعم Blazor حقن التبعية.
- يتيح لك استخدام Blazor مشاركة الكود بين أجزاء العميل والخادم في تطبيقاتك.
مقارنة بين أدوات JavaScript و Blazor
والآن وصلنا إلى الجزء الرئيسي من هذه المقالة. لنبحث عن إجابة لسؤال ما إذا كان Blazor يمكن أن يكون بديلاً للمكتبات والأطر المكتوبة في JavaScript. هل يمكن أن تحافظ JavaScript على وضعها الحالي؟ ربما يود أي شخص مهتم بالوضع الحالي لتطوير الواجهة الأمامية أن يعرف إجابات هذه الأسئلة. أعتقد أنه من السابق لأوانه استخلاص النتائج النهائية ، أو حتى وضع بعض الافتراضات حول هذه النتيجة. ولكن للاقتراب من الحقيقة ، يمكننا مقارنة العديد من مكتبات وأطر عمل JavaScript الرائدة مع Blazor.
▍Blazor vs React Comparison
يعتبر الكثيرون أن React هي أفضل مكتبة لتطوير مكونات الويب. في حين أنه من الصعب مقارنة React و Blazor ، علينا أن نعترف بأن React عبارة عن مكتبة مصممة بعناية أثبتت أنها مفيدة في تطوير مشاريع في العالم الحقيقي. تشكل مجتمع قوي من المبرمجين حول React.
النظام البيئي لـ React مليء بالمكتبات وأطر العمل التي تسهل تطوير تطبيقات React المحسنة. هذه المكتبات والأطر تجعل تتفاعل "لغة عالمية" التي يمكن استخدامها لإنشاء تطبيقات لشبكة الإنترنت، ل سطر الأوامر ، ل دائرة الرقابة الداخلية والروبوت ، وعلى سطح المكتب .
Blazor جديد نسبيًا مقارنة بـ React. لكن لا تنس أن Blazor لديها نظام Razor قوي وراءها. لذلك ، لا يمكننا القول أن Blazor شيء غير معروف تمامًا للمبرمجين. بالإضافة إلى ذلك ، نظرًا لأن Blazor يستخدم C # ، فإنه يجعل الأمر أسهل وأسرع لمطوري .NET لتعلم إطار العمل. بينما تحسنت React بمرور الوقت ، فإنها تمنح المطورين العديد من الفرص ، وبينما تتمتع React بالعديد من نقاط القوة ، فإن Blazor ، على الرغم من صغر سنه ، يتمتع أيضًا بشيء رائع:
- يمكن نشر مشاريع Blazor ، مثل مشاريع React ، كملفات ثابتة.
- يمكنك استخدام حزم NuGet في تطبيقات Blazor.
- عند استخدام Blazor على العميل وعلى الخادم ، يمكنك استخدام نفس الرمز (بالطبع ، هذا صحيح أيضًا عند استخدام JS / TS).
- يحتوي Blazor على آليات توجيه مضمنة للتحقق من صحة إدخال المستخدم ومعالجة النماذج.
هذه مجرد مجموعة صغيرة من قدرات Blazor. لكن إذا ركزت على الموقف الحالي ، فيمكننا القول أنه إذا كان فريق معين يستخدم JavaScript بثقة ، فعليهم بالتأكيد استخدام React. من ناحية أخرى ، يعد Blazor خيارًا رائعًا لشخص لديه أمر أفضل في .NET من JavaScript أثناء بدء مشروع ويب جديد.
▍Blazor vs Angular Comparison
يعتبر Angular إطار عمل JavaScript شائعًا أيضًا في تطوير تطبيقات الصفحة الواحدة. إذا قارنته بمكتبة React ، ستجد أنها تتضمن المزيد من الميزات القياسية. توفر Angular لمطور تطبيقات العميل بنية MVC لتبسيط عملية بناء واختبار المشاريع. إذا قارنت Angular و Blazor ، فقد اتضح أن Angular لها مكانة قوية في تطوير الواجهة الأمامية كإطار عمل مستقر ومعروف ومناسب لبناء تطبيقات حقيقية. بالإضافة إلى ذلك ، يدعم Angular بشكل كامل تطبيقات الويب التقدمية ، في حين أن آليات جانب الخادم من Blazor لم تتطور بعد في هذا الاتجاه. علاوة على ذلك ، نظرًا لأن Angular يستخدم TypeScript ، فإن هذا الإطار أقرب وأكثر قابلية للفهم بالنسبة لمبرمجي C # من الأطر والمكتبات المستندة إلى JavaScript.نظرًا لجميع نقاط القوة في Angular ، لا أرى أي سبب لاختيار Blazor لشخص لديه معرفة جيدة بـ TypeScript.
النتيجة
Blazor هو بالتأكيد مشروع مثير للاهتمام ، على الرغم من حقيقة أنه ظهر مؤخرًا نسبيًا ، إلا أنه يستحق بعض الاهتمام. ولا يزال السؤال حول إمكانية استبدال أدوات JavaScript في تطوير الواجهة الأمامية مفتوحًا.
هل جربت بليزر؟
