ثمانية أسباب تجعل Microsoft Stack لا يزال خيارًا قابلاً للتطبيق
نشرت: 2022-03-11كانت الحياة رائعة لمطوري Microsoft قبل 10 سنوات. كانت الشركات راضية عن الذهاب إلى Microsoft بنسبة 100 في المائة لمشاريعها التنموية. مع ASP.NET على الواجهة الأمامية و .NET الطبقة الوسطى و SQL Server على الواجهة الخلفية ، عملت الأمور بشكل جيد للغاية في معظم الأحيان. عندما لم يفعلوا ذلك ، وافق المطورون على ذلك على أنه شيء يأتي مع المنطقة. كانت مايكروسوفت تدير العرض تقريبًا. بعد ذلك ، في نهاية العقد الماضي ، بدأت حالة غوريلا مايكروسوفت التي تزن 800 رطل في الانهيار. ربما كان ذلك بسبب عدم ظهور iPhone و Microsoft التحول إلى الهاتف المحمول ، أو ربما كان ذلك بسبب انتشار المشاريع مفتوحة المصدر ، لكن الأمور تغيرت ، واليوم يجب إقناع تلك الشركات نفسها بأن استخدام Microsoft Stack هو فكرة جيدة. تقدم هذه المقالة ثمانية أسباب لصالح التمسك بمكدس برامج Microsoft.
السبب الأول: لا يزال .NET أحد أفضل المواقع
تم طرح .NET Framework منذ أكثر من 10 سنوات ، وهو غني بالميزات وتم اختباره بالكامل في المعركة. على الرغم من أنه كان من الشائع الجمع بين التطوير الأصلي والتعليمات البرمجية المُدارة في الأيام الأولى لـ .NET ، إلا أن الغالبية العظمى من مهام التطوير يتم دعمها خارج الصندوق اليوم. حتى الشركات مثل أوراكل أصدرت مكونات 100 في المائة من الكود المدار بواسطة .NET (أي برنامج تشغيل مدار ODP.NET) للتفاعل مع منتجاتها. NET API متسق وموثق جيدًا ويستخدمه الملايين.
قاعدة المعرفة المتاحة عبر MSDN و StackOverflow وآلاف المنتديات والمدونات ضخمة. في السنوات التي أمضيتها في التطوير في .NET ، لا يمكنني تذكر حالة علقت فيها لفترة طويلة بسبب خطأ في إطار العمل ؛ في كل مرة ، كان هناك شخص ما قد جرب بالفعل ، وبحث ونشر إجابة ، ولم يكن ذلك دائمًا هو الإجابة التي كنت أتمنى الحصول عليها ، ولكنه لا يزال شيئًا يدفعني إلى الأمام. مع الإصدار القادم لعام 2015 ، سيكون .NET Core مفتوح المصدر ومتاحًا على أنظمة بخلاف Windows.
السبب رقم 2: تطور ASP.NET
إذا نظرنا إلى الوراء في مكدس Microsoft التقليدي من الويب إلى قاعدة البيانات منذ 10 سنوات ، فمن المثير للاهتمام معرفة الأجزاء التي نجت من اختبار الزمن والأجزاء التي تلاشت. بينما ظلت الواجهة الخلفية لمكدس Microsoft دون تغيير إلى حد كبير (ما زلنا نستخدم نفس مجموعة الأنماط والمكونات ، مثل Dependency Injection أو Tasks أو Linq أو EF أو ADO) ، شهدت الواجهة الأمامية ، قطعة ASP.NET ، تحول جذري من "افعل ذلك على طريقة Microsoft" (أي نماذج الويب) إلى "افعل ذلك بطريقتك واستخدم ASP.NET كمنصة." اليوم ، ASP.NET هو إطار عمل قائم على MVC يتميز ببنية تحتية قوية للمصادقة والتجميع والتوجيه التي تتكامل مع العديد من التقنيات غير التابعة لـ Microsoft مثل Bootstrap و AngularJS. تبدو مواقع ASP.NET رائعة على نطاق واسع من عوامل الشكل ، من الهواتف إلى أجهزة الكمبيوتر المكتبية ، وقدرات واجهة برمجة تطبيقات الويب الخاصة بها تجعل من الكشف عن خدمات الويب أمرًا سهلاً. لقد كان إطار العمل مفتوح المصدر لعدد من السنوات ، لذلك إذا واجهتك مشكلة ، فإن المصدر متاح على GitHub. لقد تغيرت ASP.NET وتغيرت للأفضل.
السبب # 3: بساطة واجهة برمجة تطبيقات الويب وقوة WCF
اقتباسي المفضل طوال الوقت هو من Alan Kay الذي قال ، "يجب أن تكون الأشياء البسيطة بسيطة ؛ يجب أن تكون الأشياء المعقدة ممكنة ". عندما ظهرت Windows Communication Foundation (WCF) لأول مرة في عام 2006 ، لم يكن الأمر بسيطًا ؛ كانت السلوكيات ونقاط النهاية والارتباطات ساحقة. لذلك ، أصدرت Microsoft Web API ، وهو إطار عمل سهل الاستخدام يجعل من الكشف عن خدمات الويب HTTP قطعة من الكعكة. من خلال بضعة أسطر من التكوين ، تتحول واجهة برمجة التطبيقات الخاصة بك إلى خدمة ويب آمنة "متوافقة مع معايير الصناعة".
إذا كانت حالة الاستخدام الخاصة بك لا تتناسب مع القالب "القياسي" ، وتحتاج إلى تحكم كامل في كيفية تعرض واجهة برمجة التطبيقات الخاصة بك على السلك ، فيمكنك دائمًا الرجوع إلى WCF. مع عدد لا يحصى من خيارات التكوين والخطافات ، يتيح لك WCF إجراء تسلسل مخصص لبياناتك وتسجيلها واعتراضها وتوجيه رسالة واستخدام نظير إلى نظير وقائمة الانتظار وغير ذلك الكثير. تقدم واجهة برمجة تطبيقات الويب ، جنبًا إلى جنب مع WCF ، كلا مبدأي اقتباس كاي: إذا كنت بحاجة إلى خدمة ويب بسيطة ، فستنتهي في دقائق باستخدام واجهة برمجة تطبيقات الويب ؛ إذا كانت متطلبات الخدمة الخاصة بك معقدة ، فإن "الكل" ممكن مع WCF. توفر هاتان التقنيتان تغطية شاملة لسيناريوهات الخدمة وتأتي معدة مسبقًا مع .NET framework.
السبب رقم 4: SQL Server صلبة كما كانت دائمًا
لسنوات عديدة ، بدا الأمر وكأن موجة المد والجزر للغات وأطر وأنماط التطوير الجديدة جاءت عبر المستويات الأمامية والمتوسطة وحافظت على قاعدة البيانات الخلفية. بعد كل شيء ، لا يزال "SELECT" القديم الجيد قيد الاستخدام اليوم كما كان قبل 20 عامًا. أفترض أن هذا يرجع إلى حقيقة أن العديد من الشركات تنظر إلى بياناتها على أنها جوهر أعمالها ، وأن الحفاظ على سلامة هذا النواة يفوق كثيرًا إثارة تجربة "شيء جديد" في طبقة قاعدة البيانات.
يتفوق SQL Server في دوره الأساسي كحافظ البيانات مع عدد لا يحصى من الميزات للمعاملات ، والتكامل المرجعي ، والنسخ الاحتياطي ، والنسخ المتطابق ، والنسخ المتماثل ، ولكن ما يميز SQL Server عن المنافسة هو مدى تكامله مع بقية مكدس Microsoft. للتطوير السريع ، يوجد Entity Framework ، الموجود حاليًا في الإصدار 6 ، الذي اجتاز مرحلة المراهقة والوفاء بوعده بتبسيط الوصول إلى البيانات. إذا كنت بحاجة إلى قوة الحوسبة ، فسيتم تحميل .NET Framework في العملية باستخدام SQL Server ، مما يعني أنه يمكنك تضمين رمز .NET كإجراءات أو وظائف أو تجميعات مخزنة دون التضحية بالأداء. قم بإقران ذلك بحقيقة أن SQL Server 2014 يأتي مع جداول في الذاكرة ، ويمكنك التوصل إلى بعض الحلول الواقعية الرائعة التي لا يمكن إجراؤها بالسرعة الكافية فقط باستخدام SQL والجداول العادية. بعد سنوات في الصناعة ، لا يزال SQL Server على رأس قائمة أنظمة إدارة قواعد البيانات (RDBMS) الخاصة بي.

السبب الخامس: يمكن اختباره بسهولة
مرات عديدة ، أثناء عملي في تكنولوجيا المعلومات الخاصة بالشركات ، رأيت برامج تتحول إلى هذه الصناديق السوداء التي لا يمكن المساس بها لأنه لم تكن هناك اختبارات ، ولم يرغب أحد في العبث بالشفرة خوفًا من "كسر شيء آخر". بعد ذلك ، عملت على أنظمة تحتوي على آلاف الاختبارات ، وكان شعورًا رائعًا أن أكون قادرًا على إخبار الشركات ، "نعم ، يمكننا إجراء هذه التغييرات ،" بعد سنوات من إطلاق البرنامج. تم تصميم مكدس Microsoft مع وضع قابلية الاختبار في الاعتبار. يحتوي ASP.NET MVC على خطاطيف لإدخال التبعية ، وفي الإصدار 5 ، سيتم تضمين حقن التبعية في إطار العمل نفسه. في المستوى الأوسط ، إنها قصة مماثلة: نستخدم حقن التبعية لفصل التنفيذ عن الواجهة ، مما يتيح لنا تبديل أنواع الإنتاج مع نماذج في وقت الاختبار. حتى على جانب قاعدة البيانات ، هناك أدوات بيانات خادم SQL تأتي مع قوالب للاختبار مقابل طبقة الإجراء المخزن. يعد الاختبار جزءًا لا يتجزأ من عملية تطوير البرامج اليوم ، ويأتي Microsoft Stack مجهزًا جيدًا لهذا الواقع الجديد.
السبب رقم 6: وضع نظام الدعم البيئي
عندما يتعلق الأمر بالدعم ، من الجيد أن يكون لديك مجموعة من الخيارات ، بدءًا من منتديات المجتمع وانتهاءً بكائن حي حقيقي يعمل في الموقع على الخادم الخاص بك. يعد النظام البيئي عبر الإنترنت لمنتجات Microsoft من أكبر الأنظمة البيئية في هذا المجال. بعد كل شيء ، بدأ Microsoft بواسطة Bill Gates ، مطور البرامج نفسه ، الذي رأى التبني الواسع من قبل المطورين كمفتاح لانتشار منتجات Microsoft. وهذا يعني تزويد هؤلاء المطورين بالكثير والكثير من الدعم.
كانت Microsoft من بين أوائل الذين شجعوا موظفيها على التدوين حول التكنولوجيا التي كانوا يعملون عليها ، وفي حين أن بقية الصناعة قد استوعبت بالتأكيد ، فإن كمية وجودة مقاطع الفيديو التعليمية والأدلة والمقالات الواردة مباشرة من Microsoft اليوم لا تزال قائمة مبهر جدا. يتم استكمال هذه الطبقة من المحتوى عالي الجودة عبر الإنترنت بعدد كبير من أنظمة الدعم المجتمعية مثل StackOverflow ، والتي لا تكون متسقة عندما يتعلق الأمر بجودة المحتوى ، ولكنها مع ذلك أكثر فائدة من عدمها.
أخيرًا ، هناك دائمًا خيار لالتقاط الهاتف والاتصال بدعم Microsoft. نادرًا ما أضطر إلى استخدامه ، ولكن كان هناك عدد قليل من حالات طوارئ الإنتاج عند قيام مطوري Microsoft بتحليل عمليات التفريغ الأساسية التي تم إنقاذها. من الواضح أن نطاق خيارات الدعم هو عامل مؤيد لاستخدام مكدس Microsoft.
السبب رقم 7: تلتزم Microsoft بمنتجاتها
قبل بضع سنوات ، بدا اختيار Microsoft Silverlight كواجهة أمامية لأحد التطبيقات اختيارًا صالحًا ، ولكن لم يعد هذا هو الحال. مع اتجاه الجوال في التأرجح الكامل وأطر عمل JavaScript التي تهيمن على مساحة الواجهة الأمامية ، لم يعد Silverlight خيارًا ممكنًا ؛ ومع ذلك ، لا تزال Microsoft تدعمها حتى عام 2021. تلتزم Microsoft بأسلحتها ، وهو أمر جيد لأولئك منا الذين يتعين عليهم اتخاذ خيارات تقنية دون امتلاك ثمانية كرات سحرية لإخبارنا بالاتجاه التكنولوجي الذي سيهيمن على مشهد البرامج في المستقبل. يضمن استخدام مكدس Microsoft استثمار الوقت والمال في التكنولوجيا التي سيتم دعمها حتى لو لم تكن في صالح الصناعة.
السبب رقم 8: مظلة Visual Studio
قبل عقد من الزمن ، كنت أقضي حوالي 50 بالمائة من وقتي في العمل في Visual Studio وحوالي 50 بالمائة في أدوات أخرى. اليوم ، الانقسام لصالح Visual Studio بشكل كبير. بدأت رؤية Microsoft لبرنامج Visual Studio ليكون حلاً شاملاً لاستضافة IDEs تؤتي ثمارها مع العديد من منتجات Microsoft وغير التابعة لها التي تقدم مستوى معينًا من التكامل مع Visual Studio. من تطوير قواعد البيانات باستخدام SQL Server Data Tools إلى كتابة تطبيقات iPad و Android باستخدام Xamarin ، يوفر Visual Studio تجربة مطور مألوفة مع واجهة مستخدم متسقة. يمكن قول الشيء نفسه عن العمل مع Microsoft Azure ، وهي منصة سحابية تشمل مجموعة متنوعة من الخدمات من استضافة قاعدة البيانات إلى خدمات الهاتف المحمول.
طمس Visual Studio تعقيدات البنية التحتية السحابية الموزعة مما يجعل تجربة تطوير التطبيقات السحابية متوافقة مع تطوير التطبيقات غير المستضافة في السحابة. يبدو أن جميع القطع تتناسب بشكل جيد مع بعضها البعض تحت مظلة Visual Studio ، مما يجعل عملية التطوير الشاملة فعالة للغاية.
Microsoft Stack - أفضل ما في العالمين
اليوم ، هناك خيارات أكثر بكثير لكتابة برامج عالية الجودة مقارنة بما كان عليه الحال قبل 10 سنوات. هذا أمر جيد بالتأكيد لأن المنافسة تجبر اللاعبين الكبار ، مثل Google و Apple و Amazon و Microsoft ، على مواصلة الابتكار وعدم الرضا عن الذات. بينما تم دفع Microsoft من قمة الجبل بسبب التطور التكنولوجي في العقد الماضي ، فقد أظهرت الشركة أنها مستعدة للتكيف ومواءمة مع حقائق الاتجاهات التكنولوجية الحالية. احتضنت ASP.NET تقنيات ومنهجيات أخرى ، العديد منها مفتوح المصدر ، مع تلاشي نماذج الويب الأصلية في التاريخ. يستمر إطار عمل .NET في التطور ، مخترقًا آفاقًا جديدة مع مكتبات للحوسبة متعددة الخيوط والمعالجات متعددة النواة. مع إصدار 2015 الوشيك ، سيكون جوهر إطار العمل مفتوح المصدر وقابل للنقل لمنصات غير تعمل بنظام Windows ، وهي خطوة في اتجاه الشمولية والشفافية.
تأتي هذه التحسينات المرحب بها من شركة لديها عمليات راسخة لإصدار برامج تم اختبارها وتوثيقها ودعمها. إن استخدام مكدس Microsoft يجلب الإثارة للعمل مع اللغات والأطر الحديثة بالإضافة إلى استقرار الدعم من قبل عملاق برمجيات يتمتع بعقود من الخبرة في صناعة التطوير. هذا هو السبب في أنني أوصي بمكدس Microsoft اليوم.