المشاركات : 103
المواضيع 26
الإنتساب : Apr 2020
السمعة :
4
الشكر: 75
تم شكره 91 مرات في 59 مشاركات
29-04-23, 01:04 AM
(آخر تعديل لهذه المشاركة : 29-04-23, 01:08 AM {2} بواسطة ابو محمد محمد محمد.)
جزاك الله كل خير
شكرا
لاثراء الموضوع
الإجابة المختصرة: التوافق عبر الأنظمة الأساسية
الإجابة السريعة هي أن .NET Core يعمل على Linux و macOS ، بينما يعمل .NET Framework على نظام Windows فقط. تستخدم .NET Core عندما تحتاج إلى توافق مع الأنظمة الأساسية ، وتستخدم .NET Framework عندما تحتاج إلى خدمات خاصة بـ Windows وحزم NuGet التي لم يتم نقلها إلى .NET Core.
NET Core هو خليفة .NET Framework ، لذلك هذا بالتأكيد ما تريد أن تذهب إليه في المستقبل. إنه يترك بعض ميزات Windows فقط ، ولكن لا يزال من الممكن دعم العديد منها بامتداد Windows Compatibility Pack.
بشكل عام ، النواة والإطار متماثلان إلى حد كبير ، ولكن في الممارسة العملية هناك اختلافات طفيفة. NET Core و .NET Framework يستخدمان نفس واجهة برمجة التطبيقات ، المسماة .NET Standard ، لكن Core مفتوح المصدر ، بينما Framework هو تطبيق Microsoft لنظام التشغيل Windows فقط.
بشكل عام ، يعد Core أخف قليلاً من Framework لأنه مصمم للاستخدام بشكل شائع مع Docker في الخلفيات المستندة إلى الخدمات المصغرة. إلى جانب القدرة على استخدام Linux في المقام الأول (مطلوب لـ Docker) ، ستكون الصورة الناتجة أصغر قليلاً مع .NET Core.
علاوة على ذلك ، تكمن معظم الاختلافات في اختلافات حزمة NuGet. على سبيل المثال ، يختلف Entity Framework Core قليلاً عن Entity Framework 6 ، الذي يعمل على .NET Framework. يختلف ASP.NET Core كثيرًا عن ASP.NET 4 لأنهم أعادوا تصميمه كثيرًا لـ .NET Core.
متى تستخدم NET Core
يجب عليك استخدام .NET Core على .NET Framework عندما:
Tu الحاجة ل التوافق عبر الأنظمة الأساسية. يتضمن ذلك استخدام Docker وبنى الخدمات المصغرة.
تبدأ مشروعًا جديدًا وعليك فقط اختيار واحد. (NET Core هو الأحدث.)
أنت لا تستخدم أدوات أو مكتبات خاصة بـ Windows أو حزم NuGet التي تعتمد على .NET Framework.
تريد أفضل أداء ممكن. توصي Microsoft باستخدام .NET Core مع ASP.NET عبر .NET Framework.
تريد تشغيل إصدارات متعددة من .NET Core بجانب بعضها البعض. الإطار لا يدعم هذا.
تريد الوصول إلى CLI على Linux أو تشغيل خادم إنشاء CI / CD على Linux.
متى تستخدم .NET Framework
يجب عليك استخدام .NET Framework على .NET Core عندما:
سيكون الحل الأسهل هو إنشاء حل جديد ومشروع يعتمد على .NET Core وتحميل التعليمات البرمجية الخاصة بك. إذا كان لديك تطبيق بسيط ، فمن المحتمل أن يكون هذا هو الحل الأسهل.
وإلا يمكنك استخدام ملفات dotnet try-convert، أو اتبع دليل النقل الخاص بـ Microsoft.
بالنسبة للمشاريع الكبيرة والمعقدة ، يمكنك استخدام محلل النقل .NET Portability Analyzer. هذه أداة من Microsoft ستحلل مشروعك ، وتخبرك بمدى صعوبة التحويل وتوضح لك الخطوات التالية التي يجب أن تكون. يمكنه أيضًا إنشاء رسم بياني موجه للاعتماديات الخاصة بك ، والذي يمكن أن يساعدك في معرفة ما يحتاج إلى تحليل. سيكون نقل بعض المشاريع أكثر صعوبة من غيرها ، وإذا كنت تستخدم شيئًا غير متوفر في Core ، فقد لا تتمكن من النقل على الإطلاق بدون حل بديل.
أنت تستهدف فقط عمليات نشر Windows.
أنت تستخدم بشكل مكثف حزم ومكتبات Windows ، مثل Windows Forms و WPF و ASP.NET Web Forms / Pages و Windows Workflow Foundation.
لا تتم إضافة التقنيات التي تستخدمها بواسطة حزمة توافق Windows لـ .NET Core.
أنت تستخدمه بالفعل وسيستغرق الترحيل الكثير من الجهد.
كيفية التبديل إلى .NET Core
عادةً ما يكون هذا هو "كيفية التبديل من Framework -> Core" ، لأن أي مشروع موجود على .NET Core ربما لن يحتاج إلى العودة إلى .NET Framework القديم.
إذا كنت تستخدم شيئًا خاصًا بنظام Windows ، فلا يمكنك ذلك. أنت عالق في .NET Framework حتى تحصل المكونات التي تستخدمها على إصدارات Core ، وبعض الأشياء التي لن تحدث مثل ASP.NET WebForms.
المشاركات : 103
المواضيع 26
الإنتساب : Apr 2020
السمعة :
4
الشكر: 75
تم شكره 91 مرات في 59 مشاركات
بالنسبة للحقوق انت وضعت الرابط فعلا وانا قربت للمستخدم المعلومة