بسیاری از برنامه نویسان قدیمی و افرادی که علاقه زیادی به مایکروسافت و برنامه های انحصار طلب مایکروسافت نداشتند اصلی ترین علت را انحصار طلبی و عدم توانایی اجرا در سایر پلتفرم ها مطرح مینمودند. مایکروسافت در چند سال اخیر به لزوم اوپن سورس، چند پلتفرم بودن پی برده است که سیستم هایی نظیر Azure و سایر سرویس ها را برای رفع این نواقص ارائه داده است. یکی از پروژه های اساسی مایکروسافت در زمینه برنامه نویسی NET CORE. میباشد. مایکروسافت اساسی ترین پلتفرم برنامه نویسی خود را با این پروژه ارائه داده است. NET CORE. پلت فرم اوپن سورس و سریع میباشد که برای همه دیوایس ها از جمله موبایل�� وب ، اپلیکیشن های ویندوزی ، لینوکس و MAC میباشد که شما قادر هستید برنامه های خود را با این فریم ورک و پلتفرم جدید به راحتی قابل حمل کرده و در تمامی دیوایس ها پیاده کنید.
ویژگیهای اساسی NET CORE. چیست؟
اوپن سورس: اولین ویژگی مثبتی که همه برنامه نویسان را مجددا به سمت مایکروسافت کشانده است اوپن سورس بودن آن میباشد که شما میتوانید این پلتفرم را بسته به نیاز خود شخصی سازی کنید.
NET CORE. و برنامه های اجرا شده در این پلتفرم بسیار سبک و کم حجم میباشند.
Cross Platform میباشد، شما با NET CORE. به معنای کامل میتوانید بصورت یکپارچه در تمامی سیستم عامل ها و دیوایس ها پروژه خود را پیاده کنید.
توسعه راحت و سریع NET CORE. باعث شده است پروژه ها و استارت آپ های زیاد به جهت راحتی در تیم برنامه نویسی این پلتفرم را انتخاب کنند.
پشتیبانی از Github و نیوگت برای برنامه های اوپن سورس
هزینه های پایینتر، از دیگر مشکلات برنامه های ویندوزی هزینه نگهداری و منابع مورد نیاز آنها بود. با کاهش محسوس حجم برنامه ها و منابع مورد نیاز میتواند یکی دیگر از بهترین مزیت های NET CORE. را هزینه نگهداری پایین آن درنظر گرفت.
پشتیبانی از خط فرمان بسیار قدرتمند برای نصب بسته های پیش نیاز
.NET CORE جایگزین دات نت فریم ورک میباشد؟
بسیاری از متخصصین در ابتدای ارائه دات نت کور بر این باور بودند که مایکروسافت در حال آماده سازی جهت کوچ به سمت اوپن سورس میباشد و به احتمال زیاد آینده دات نت فریم ورک رو به اتمام میباشد و بایستی جای خود را به دات نت کور بدهد. ولی طبق بررسی های انجام شده قرار نیست چنین اتفاقی بیافتد و فعلا تا اطلاع ثانوی مایکروسافت همچنان قصد ارائه آپدیت و امکانات جدید به دات نت فریم ورک را دارد.
در حال حاضر شما توسط دات نت کور میتوانید برنامه های تحت وب، کتابخانه ای و کنسول را برنامه نویسی کنید. البته همانطور که میدانید در برنامه های Asp.net خیلی وقت هست که مایکروسافت از وب فرم پشتیبانی نمیکند و در صورتی که قصد استفاده از Asp.net روی پلتفرم .NET CORE میبایست حتما روی MVC پروژه های خود را پیاده سازی کنید.
کتابخانه هایی که برای دات نت فریم ورک و ابزارهایی که برای آن تهیه شده است به قدری زیاد هست که برنامه نویسان .Net احتمالا با شنیدن این موضوع که هنوز دات نت کور ابزارهای بسیار کمتری نسبت به .Net دارد نا امید خواهند شد. ولی نبایستی فراموش کرد که پلتفرم جدید مایکروسافت بسیار جدید میباشد و نیاز به زمان زیادی دارد تا همانند .Net از لحاظ کلاس ها، ابزارها و … تکمیل گردد.
بعد از ارائه موفق .NET CORE مایکروسافت اعلام کرده است که Asp.NET 5 و همچنین MVC5 قابلیت اجرا پیاده سازی بر روی دات نت کور را دارا میباشند. همچنین هم اکنون در صورتی که شما برنامه خود را با .NET CORE و ASP.NET 5 پیاده سازی کرده اید میتوانید برنامه های خود را علاوه بر ویندوز با Mono Runtime روی لینوکس و مک اجرا کنید.
.NET CORE روی سرورهای فعلی ویندوز اجرا میگردد؟
یکی از اساسی ترین سوالات برنامه نویسان مخصوصا برنامه نویسان .NET این هست که آیا میتوانند برنامه های Asp.Net که بر پایه .Net Core پیاده سازی شده اند را روی سرور ویندوز اجرا کنند؟ جواب این سوال شاید برای خیلی از کاربران ساده تر از این میباشد که بخواهیم روی آن بحث کنیم، ولی واقعیت این هست که در حال حاضر تمامی شرکت های هاستینگ سرور های خودرا آماده برای .Net Core نکرده اند. با توجه به اینکه اجرای این برنامه ها کمی متفاوت میباشد احتمالا شرکت هایی که به امنیت بیشتر اهمیت میدهند هنوز ریسک این را نپذیرند که در اولین فرصت .Net Core را پشتیبانی کنند. البته کنترل پنل محبوب پلسک بصورت پیش فرض از .Net Core پشتیبانی میکند و حتی در نسخه جدید Onyx هنگام نصب پلسک میتوانید .Net Core را براحتی بدون هیچ دانشی نصب کنید.
در انتها پیشنهاد میگردد در صورتی که برنامه نویس .Net هستید شک نکنید که بایستی به دات نت کور کوچ کنید و در اولین فرصت شروع به یادگیری آن کنید. همچنین در صورتی که میخواهید برنامه نویسی را شروع کنید باهم پیشنهاد میگردد در کنار سایر زبانها و پلتفرم ها، دات نت کور را نیز در لیست انتخاب پلتفرم یادگیری خود نیز قرار دهید.