بعد از asp.net 4 خوب بود که ASP.net 5 معرفی شود. ولی asp.net 5 معرفی نشد و با تغییرات داخلی و تکمیل آن با نام ASP.net Core1.0 شناخته شد. و به همین ترتیب نسخه های جدیدتر .NET Core 5.0 و Entity Framework 7 در نسخه های نهایی با نام .NET Core 1.0 و Entity Framework Core 1.0 شناخته شدند.
ASP.NET Core چیست
افرادی که تکنولوژی های مایکروسافت به ویژه asp.net را پی گیری می کنند یکی دو سال می شود که با شنیدن خبرهایی مانند “open source شدن دات نت”، “قابلیت اجرا بر روی غیر ویندوز مثل لینوکس و os x با سوالهایی مواجه می شوند. این تغییرات موجب چه بهبودهایی در توسعه نرم افزار های تحت .net می شود؟ آیا مایکروسافت از تکنولوژی های قبلی پشتیبانی می کند یا باید سراغ تکنولوژی جدید بروم؟ برای پاسخ به سوالهایی از این دست شاید بهترین راه پس از آشنایی اولیه، انجام یک پروژه کوچک باشد. قصد داریم در این مقاله به معرفی asp.net core بپردازیم.
برای کسانی که برای توسعه وب سایت از تکنولوژی وب فورم استفاده می کنند تغییرات چشم گیر خواهد بود. بنابراین توصیه می شود ابتدا asp mvc نسخه های قبلی یعنی تا نسخه ۶ را اندکی تجربه کنند. اما برای کسانی که تجربه کدنویسی در چارچوب الگوی mvc را دارند تغییرات بسیار کم است. تیم asp.net سعی کرده است در نسخه جدید که تنها بر بستر mvc است از لحاظ مفهومی سازگاری را حفظ کند با اینکه تمام کتابخانه ها و توابع از نو نوشته شده اند. بنابراین اگر شما در asp.net mvc6 کلاسی دارید در asp.net core هم همین کلاس را دارید با این تفاوت که این کلاس در namespace دیگری قرار دارد. به این رویکرد سازگاری مفهومی یا concept compatibility گفته می شود.
مشکلات asp.net mvc
ابتدا مشکلات asp.net mvc نسخه های قبلی را بشناسیم تا به توانیم به مزیت های asp.net core پی ببریم.
- تنها باید از iis و ویندوز برای پروژه های asp.net mvc استفاده می شد؛ این یعنی شما برای یک وب سایت حتما باید از وب سرور غول پیکری مثل iis استفاده می کردید و اگر هاست لینوکس با نصف قیمت هاست ویندوز می یافتید نمی توانستید از آن استفاده کنید.
- قرار گرفتن درخواست در مسیری طولانی از handlerهاو ماژول ها؛ برای یک وب اپلیکیشن ساده از آغاز سشن تا اعتبارسنجی درخواست و … تا گرفتن جواب نهایی، تا امروز امری عادی و اجتناب ناپذیر محسوب می شد.
- بیگانگی کامل با چارچوب های مدیریت پکیج های سمت کاربر مثل bower, npm, gulp و … ؛ در سالهای اخیر پیشرفت های زیادی در زمینه مدیریت پروژه ها و پلاگین های سمت client صورت گرفته اما در نسخه های قبلی asp استفاده از این چارچوب ها ممکن نبود.
- دات نت فریم ورک تا قبل از این پروژه ای انحصاری بوده است؛ علیرغم open source شدن بسیاری از پروژه ها و چارچوب های نرم افزاری و قرار گرفتن آنها بر روی github پروژه دات نت سالهای متمادی از این امکان استفاده نمی کرد.
مسایل بالا عمده نقص هایی بودند که موجب شدند تا تیم دات نت به فکر ایجادasp.net core باشند: ( ASP.NET Core چیست ) یعنی بستری سبک، با عملکرد خوب و با قابلیت توسعه و قرار گرفتن نرم افزار در محیط های غیر از ویندوز.
برای یادگیری ASP.NET Core یک پکیج کامل تهیه کرده ایم، این پکیج آموزشی به صورت جامع و پروژه محور است و همراه آموزش کامل ASP.NEt Core یک پروژه کامل ساخت سایت آموزشی شروع ميکنيم و در نهايت با publish بر روي سرور به پايان ميبريم.
در این دوره آموزشی تمامی مباحث مورد نیاز برای تسلط شما در نظر گرفته شده است:
- مبحث امنيت (احراز هويت)
- مبحث Entity FreamWork Core
- استفاده از آخرين امکانات و پتانسيل هاي .Net Core
- Razor Page – View Component – PartialView
- مبحث Model View Controller
کد تخفیف برای خرید “پکیج جامع آموزش ASP. NET Core” از سایت لیموناد
blog32dcz
توجه در این لینک می توانید آموزش entity framework code first را ببینید.
توجه داشته باشید که asp.net core با net core. فرق دارد net core. ورژن سبک تری از کل دات نت فریم ورک می باشد و asp.net بستر توسعه نرم افزارهای تحت وب که هم میتواند بر بستر net core. و هم بر بستر دات نت استاندارد اجرا شود. شکل زیر مکان هر یک را نشان می دهد.
پروژه asp.net core می تواند
- مانند قبل تحت نسخه کامل دات نت فریم ورک یعنی نسخه ۴٫۶ و یا کمتر بر روی ویندوز و وب سرور iis منتشر شود
- می تواند بر روی دات نت core بر روی هر یک از بسترهای ویندوز، لینوکس یا os x اجرا شود.
در این لینک دوره رایگان آموزش asp.net core را ببینید.
6 دیدگاه. دیدگاه جدید بگذارید
عالی بود
ThankYou
سلام
آیا روی هاست لینوکس هم میشه اجرا کرد تاکید میکنم “هاست”
بله دیگه
Core اپن سورس هستش
سلام و وقت بخیر
ببخشید asp.net و asp.net core رو هردوشون رو باید بلد باشیم یا اینکه asp.net core کافیه؟
سلام وقت بخیر خدمت شما کاربر گرامی،
اگر شما قصد ورود به برنامه نویسی وب دارید، با همان asp.net core می توانید فرایند یادگیری را شروع کنید. فقط برای ورود به این حوزه نیاز است که با برنامه نویسی C# آشنایی و پیش زمینه داشته باشید.
برای ورود به دنیای برنامه نویسی وب در لیموناد دوره بسیار جامعی در این خصوص به صورت پروژه محور طراحی شده است، که می توانید از این دوره استفاده کنید:
https://www.limoonad.com/course/194354/%d9%be%da%a9%db%8c%d8%ac-%d8%ac%d8%a7%d9%85%d8%b9-%d8%a2%d9%85%d9%88%d8%b2%d8%b4-asp-net-core-%d9%be%d8%b1%d9%88%da%98%d9%87-%d8%b3%d8%a7%d8%ae%d8%aa-%d8%b3%d8%a7%db%8c%d8%aa-%d8%a2%d9%85%d9%88%d8%b2%d8%b4%db%8c