أواخر العام 2016 كلنا سمعنا عن خطوة مايكروسوفت الكبيرة في اعتناق عالم البرمجيات الحرّة و ذلك بفتح مصدر المنصة dotNet و جعلها cross platform

حقيقة لم آخذ الأمر على محمل الجد كوني استخدم لينيكس لفترة طويلة و أكره مايكروسوفت نوعاً ما, كنت وقتها مطور بايثون مع إطار العمل الرائع جانغو

الآن وبسبب مشروع للجامعة اضطررت للتعامل مع Asp.net core و هنا أكتب عن انطباعي عنها علّ أحد المترددين يجربها على لينيكس

1- CLI and Tooling

فيما عدا إدارة قواعد البيانات, فيجوال ستوديو كود جعل من فيجوال ستوديو مضيعة للرام فقط!

هنا مثلاً عملية الـ refactoring التي لطالما تميّز بها فيجوال ستوديو عن غيره

أيضاً الـ CLI (أدوات الترمنال) رائعة جداً و سهلة القراءة و التذكر

2- ٍScalability

المشروع قابل للتوسيع بسهولة بسبب مفهوم فصل المكونات Separation of concerns الذي تتبعه هيكلية المشروع

مع عشقي لبايثون و جانغو بشكل خاص أعتقد أن Asp.net أعطتني قدرة أكبر على توسيع أي مشروع

3- Built-in feature

أكثر من مئة ألف Package على Nuget كل ما تحتاجه موفر لك هناك

4- Tag helpers

ﻹن كنت قد قمت ببعض من الـ Asp.net mvc 5 فاستطيع أن أجزم أنك تكره Html helpers لأن ملفات الـ HTML فيها لا تبدو كـ HTML على الإطلاق

هنا Html helper:

مقارنة مع Tag helpers المضافة حديثاً لـ Asp.net core

تاغ هيلبر لا يغيرون من شكل ملف Html البنية نفسها تستخدمها مع استدعاء دوال C# كـ Attributes لتاغ Html

5- Performance and safe typing

اكثر ما كنت أفتقده في بايثون هو بطئها و كونها dynamically typed لكن مع سي شارب و فيجوال ستوديو كود الذي يعطي inline errors (رسائل خطأ تظهر في فيجوال ستوديو كود قبل حتى أن تشغل المشروع لتجربته) تستطيع أن توفر الكثير من الوقت

6- NO-SQL Database!

حرية اختيار محرك قواعد البيانات أيضاً رائعة بحيث تستطيع العمل مع mono أو أي قواعد بيانات تريد! بعد أن كانت مايكروسوفت تجبر المستخدمين على استخدام MSSQL الآن تستطيع اختيار ما تريد

7- Lightweight

مثلما نعلم دوت نت إطار عمل ضخم جداً لكنك هنا فقط تستدعي ما تريد من الحزم لاستخدامها, عملية injecting dependencies ليست أكثر من نسخ و لصق اسم الحزمة في ملف المشروع

8- Deployment

إحدى أكثر الخطوات شجاعة التي اتخذتها مايكروسوفت هي إمكانية نشر المشروع على سيرفر لينيكس بواسطة Nginx ,apache و حتى Docker

أنت لست مقيد باستخدام سيرفرات ويندوز بعد الآن!

10- Community driven

بيضة القبان هي إشراك مجتمع التقنية في بناء التقنية, بناء حزم و مكاتب متاح الآن مما يتيح لك كمستخدم للتقنية أن تجد مكاتب أكثر و أكثر كل يوم

خلاصة:

أعتقد انني مدين باعتراف لمحبي مايكروسوفت خصوصاً مع تخطيطي لتعلم الرائعة Typescript و التي أيضاً مفتوحة المصدر من مايكروسوفت

دوت نت كور بيئة رائعة للعمل معها و انصح الجميع بتجربتها سواء على لينيكس أو غيره فالتجربة نفسها على ويندوز.