Net core. چیست و چه مزایایی نسبت به dot net دارد؟
NET CORE. یا دات نت کور چیست؟
NET Core. پلتفرمی چندسکویی و متن باز است که برای ایجاد نرمافزارهای تحت وب مدرن با استفاده از زبان برنامهنویسی NET. ساخته شده است. این پلتفرم ماژولار توسط شرکت Microsoft و انجمن NET. بر بستر GitHub ایجاد شده است.به عبارت دیگر NET Core. بازسازی کامل فریمورک محبوب NET. با پشتیبانی از پروژههای NET. مایکروسافت است؛ همانگونه که بسیاری از تکنولوژیهای دیگر بر پایهی فریمورک NET. ساخته شدهاند. در ایجاد دات نت کور بر سه اصل متن باز بودن، چند سکویی و آسانسازی کد تمرکز شده است و این سه اصل با هم در دات نت کور گرد هم آمدهاند. جالب آنکه NET Core. در حالی ساخته شده که تمامی خصوصیات برتر و مهم NET. از جمله امنیت بالا در آن نیز حفظ شده است.
به طور کلی آنچه فریمورکهای NET. را محبوب کرده، قابلیت ایجاد Class Library و در نتیجه دادن آزادی به توسعهدهندگان برای ایجاد اپلیکیشن با هر زبانی (مانند VB، C++، C# و …) است. دات نت کور نیز از این قاعده مستثنی نبوده و به راحتی امکان تلفیق و استفاده در کنار زبانهای برنامهنویسی دیگر مانند #C را دارد.NET CORE. پلت فرم اوپن سورس و سریع میباشد که برای همه دیوایس ها از جمله موبایل، وب ، اپلیکیشن های ویندوزی ، لینوکس و MAC میباشد که شما قادر هستید برنامه های خود را با این فریم ورک و پلتفرم جدید به راحتی قابل حمل کرده و در تمامی دیوایس ها پیاده کنید.
ویژگی های اصلی دات نت کور چیست؟
- انعطاف پذیری در استفاده: می تواند به صورت یک افزونه در اپلیکیشن مورد نظر شما قابل استفاده شود و یا اینکه به صورت کاملا مجزا و با کاربری های مختلف در سرویس شما نصب گردد.
- قابلیت چند سکویی (Cross-Platform): قابلیت نصب بر روی ویندوز، لینکوس و macOS؛ امکان پورت کردن به سایر OSها. با توجه به برنامه های مایکروسافت و دیگر کمپانی ها و طراحان و توسعه دهندگان دخیل، پشتیبانی از سایر سیستم عاملها، CPUها و اپلیکیشن ها با گذر زمان رشد و بهبود خواهد یافت.
- ابزارهای Command-line: تمامی محصولات مشتق شده از سناریوهای مختلف قابل استفاده و ویرایش و اجرا به صورت خط فرمان هستند.
- سازگاری: به لطف استفاده از کتابخانه استاندارد .Net ،.Net Core توانایی سازگاری با .Net Framework ، Xamarin و Mono را داراست.
- متن باز بودن (Open source): پلتفرم دات نت کور کاملا متن باز بوده و از لایسنسهای MIT و Apache 2 استفاده می کند.
تفاوتهای فریمورک NET. و NET Core. :
NET Core. :
- پشتیبانی از کراسپلتفرم لازم است.
- پشتیبانی از میکروسرویسها (microservice) لازم است.
- پشتیبانی از استفاده از Docker Containerها (داکر کانتینر) لازم است.
- نیازمند سیستمهایی با کارایی بالا و مقیاسپذیر است.
- لازم است بهازای هر اپلیکیشن، از ورژنهای NET. در کنارهم (side-by-side) پشتیبانی کند.
- میکروسرویسها : از میکروسرویسها پشتیبانی میکند.
- داکر کانتینرها : از deployment در داکر کانتینرها پشتیبانی میکند.
- انجمن و منحنی یادگیری : یک فناوری نوپاست، به همین دلیل انجمن آن هنوز در حال رشد است و از انجمن فریمورک NET. کوچکتر است. در نتیجه، منحنی یادگیری آن بسیار بزرگ است و یادگیری آن زمان بیشتری میبرد.
- Deployment : Deployment از روشهای قبلی راحتتر است.
فریمورک NET. :
- از فریمورک NET. استفاده میکند (پیشنهاد این است که به جای migration از extend استفاده شود).
- بر مبنای کتابخانههای شخص سوم .NET یا پکیجهای NuGetای نوشته میشوند که استفاده از آنها در دات نت کور ممکن نیست.
- بر مبنای فناوریهای NET.ای نوشته میشوند که استفاده از آنها در دات نت کور ممکن نیست.
- بر مبنای پلتفرمی نوشته میشوند که از دات نت کور پشتیبانی نمیکند.
- میکروسرویسها : از میکروسرویسها پشتیبانی نمیکند.
- داکر کانتینرها : از deployment در داکر کانتینرها پشتیبانی نمیکند.
- انجمن و منحنی یادگیری : به عنوان یک فناوری نسبتاً قدیمیتر، انجمن بزرگی دارد و منحنی یادگیری آن کوچک است.
- Deployment : Deployment زمانبر است.
ترکیب و ساختار NET Core.
به صورت خلاصه، NET Core. شامل موارد زیر است:
- NET runtime. مشخصکنندهی نوع سیستم و ارائه دهندهی Assembly Loading، بازیافت حافظه (Garbage collection)، اجرای زبانهای برنامهنویسی مختلف به صورت مشترک در یک سیستم محلی و سایر سرویسهای پایه است.
- NET Core Runtime. تنها جهت اجرای اپلیکیشنهای NET Core. مورد استفاده قرار میگیرد و به تنهایی امکان ساختن اپلیکیشن ندارد.
- مجموعهای از کتابخانههای فریمورک (Framework Libraries)
- مجموعهای از ابزارهای (SDK (software development kit و کامپایلرهای زبان: NET Core SDK. در واقع ابزارهای توسعه برای NET Core. میباشد که شامل NET Core Runtime. برای اجرا و ابزارهای خط فرمان (Command Line) برای ایجاد اپلیکیشنهای دات نت کور مورد استفاده قرار میگیرد.
تفاوت Mono با NET Core. چیست؟
Mono مشتق اصلی مجموعه NET. بوده که قابلیتهای چند سکویی و متن باز بودن را دارا بوده است و اولین بار در سال ۲۰۰۴ ارائه شد، که میتوان به آن به عنوان عضو اجتماعی تر شده NET Framework. نگریست. تفاوتها اصلی آن با دات نت کور به شرح ذیل است :
- App-models : Mono مجموعه ای از زیردسته های اپلیکیشن مدل دات نت فرم ورک (به عنوان مثال؛ Windows Form) و همچنین تعدادی مضاف بر آن (به عنوان مثال؛ iOS) را از طریق Xamarin پشتیبانی می کند. .NET Core این موارد را پشتیبانی نمی کند.
- APIs : Mono مجموعه گسترده ای از زیر دسته های رابطهای نرم افزاری دات نت فرم ورک را با استفاده از همان فاکتورها و نامهای اسمبلی ساپورت می کند.
- هدف گذاری : در سالهای اخیر هدف اصلی Mono پلتفرم موبایل بوده است در صورتیکه جهت گیری NET Core. بر روی فضای ابری می باشد.
سخنی با توسعهدهنگان
آنچه NET Core. را محبوب کرده، پشتیبانی آن از اپلیکیشنهایی است که با استفاده از Visual Studio توسط زبانهای برنامهنویسی C#، F# و VB در پلتفرمها و سرویسهای مختلف اجرا میشود.به همین دلیل، HiSupport با استفاده از برنامهنویسی سمت سرور همواره جدیدترین ابزارهای مورد نیاز را در سرورها فراهم کرده و با تهیهی زیرساختهای لازم جهت کدنویسی با استفاده از زبانهای برنامهنویسی مختلف در هاستینگ خود، شرایط را برای اجرای برنامههای تحت وب NET Core. فراهم کرده است.
دیدگاهتان را بنویسید