سلام بر دوستان عزیز و همراه...
امروز با یک مبحث دیگه در زمینه آموزش ASP.NET Core همراه شما هستم، بدون شک دوستانی که در زمینه توسعه اپلیکیشن های تحت وب با استفاده از سی شارپ و فریمورک های NET. فعال هستند، با مفهوم NET. و NET Core. آشنایی دارند، اما بهتر برای دوستانی که آشنایی محدودی با این فریم ورک دارند توضیح مختصری ارائه بدیم.
فریمورک NET. از جمله محصولات مایکروسافت بود که سال ها توسط برنامه نویسان فعال در حوزه تولید اپلیکیشن مورد استفاده قرار می گرفت اما بدلیل برخی محدودیت هایی که برای برنامه نویسان ایجاد می کرد، محبوبیت خود را بویژه در میان Startup ها از دست داد، تا اینکه مایکروسافت با معرفی فریم ورک NET Core. انقلابی جدید ایجاد کرد. فریم ورک NET Core. بصورت محسوسی سبک بود و وجود مزایا دیگری همچون متن باز بودن (Open Source)، چند سکویی بودن (Cross Platform)، ساده، قدرتمند، رایگان و ماژولار بودن باعث شد که این محصول جدید مایکروسافت به سرعت مورد استقبال قرار بگیرد و دوباره مایکروسافت در فضا رقابتی توسعه اپلیکیشن های تحت وب خوش بدرخشد.
علاوه بر این، آموزش ASP.NET Core به شما نشان می دهد که فریم ورک NET Core. تمامی ویژگی های Core که برای راه اندازی یک برنامه NET Core. نیاز است رو شامل میشه. اگر ویژگی دیگری در Core نیاز باشه می توان آن را بوسیله NuGet Packages تامین کرد که در صورت نیاز می تونیم آنها رو به برنامه خود اضافه کنیم. پس برنامه NET Core. می تونه باعث بهبود عملکرد، کاهش حافظه مورد نیاز و آسان شدن حفظ و نگهداری برنامه ساخته شده هم بشه.
خوب اگر از من بپرسید که جواب من به سوال "چرا NET Core." چیه، جواب شما رو با استفاده از دو پاراگراف زیر میدم (این دو پاراگراف برگرفته از مقاله ای هستش که بر اساس مطالب سایت های مختلف آماده کردم) :
استفاده از فریم ورک NET. محدودیت هایی ایجاد می کند که از جمله آنها می توان به موارد زیر اشاره کرد : این فریمورک تنها بر روی پلتفرم ویندوز قابل استفاده است. برای ویندوزهای مختلف، همچون دسکتاپ، استور، تلفن و برنامه های تحت وب باید نمونه های متفاوتی از NET API. را بکار گرفت. علاوه بر این، ساختار فریم ورک NET. بگونه ای است که اگر تغییری در آن ایجاد شود، تمامی برنامه هایی که به آن وابستگی دارند، تحت تاثیر قرار می گیرند.
امروزه، ساخت برنامه ای که بر روی سیستم های مختلف کار کند، برنامه نویسی یک سایت و طراحی آن برای ویندوزهای دسکتاپ و وب، و ساخت برنامه های موبایل، از جمله درخواست های معمول مشتریان است. بنابراین، استفاده از یک فریمورک خاص که سیستم های مختلف را پشتیبانی کند، ضروری است. بهمین دلیل، مایکروسافت NET Core. را معرفی و ارائه کرد. هدف اصلی از معرفی NET Core. این بود که فریم ورک NET. تبدیل به فریمورکی متن باز و کراس پلتفرم (چند سکویی) شود تا قابلیت استفاده بر روی دستگاه های مختلف را داشته باشد.
حالا وقتش رسیده که ویژگی های NET Core. و ضرورت آموزش ASP.NET Core برای دوستان فعال در این حوزه رو بصورت مفصل با همدیگه بررسی و مطالعه کنیم :
1. متن باز بودن فریم ورک NET Core. :
از آنجا که NET Core. فریمورکی متن باز است، بر روی سایت GitHub در دسترس است.
2. ویژگی کراس پلتفرم در فریم ورک NET Core. :
فریم ورک NET Core. را می توان بر روی سیستم های عامل ویندوز، مک و لینوکس اجرا کرد. در هر سیستم عامل، زمان مورد نیاز برای اجرا کد یکسان و خروجی گرفتن از آن متفاوت است.
3. سازگاری با معماری های مختلف در فریم ورک NET Core. :
فریم ورک NET Core. را می توان در معماری های ساختاری مختلف همچون X64، X86 و ARM استفاده کرد و رفتار مشابهی را از آن دریافت کرد.
4. دامنه وسیعی از برنامه ها در MVC Core :
برنامه های بسیاری را می توان بر اساس پلتفرم NET Core. ساخته و راه اندازی کرد. از جمله این برنامه ها می توان به مواردی همچون برنامه های موبایل، برنامه های دسکتاپ، برنامه های تحت وب، برنامه های یادگیری ماشین، مایکرو سرویس ها، بازی و .... اشاره کرد.
5. امکان پشتیبانی از چند زبان در فریمورک NET Core. :
برای توسعه برنامه در Asp.NET Core می توانید از زبان های برنامه نویسی C#، F# و ویژوال بیسیک استفاده کنید. علاوه بر این، می توانید از IDE دلخواه خود، همچون Visual Studio 2017/2019، Visual Studio Code، Sublime Text، Vim و .... استفاده کنید.
6. معماری ماژولار در MVC Core :
فریم ورک NET Core. با استفاده از NuGet Packages از معماری ماژولار پشتیبانی می کند. پکیج های متفاوتی وجود دارد که کاربر آنها را متناسب با نیاز خود به پروژه اضافه می کند. نکته قابل توجه این است که حتی کتابخانه NET Core. نیز بعنوان یک NuGet Package ارائه می شود و این مسئله باعث کاهش فضا اشغال شده از حافظه، بهبود عملکرد و نگهداری آسان پروژه می شود.
7. پیاده سازی CLI در MVC Core :
فریم ورک NET. ابزارهای Command-Line Interface را برای توسعه و یکپارچه سازی برنامه بصورت پیوسته، بکار می گیرد.
8. سازگاری در فریم ورک NET Core. :
با استفاده از بکارگیری .NET Standard Specification با فریمورک NET. و Mono APIs نیز سازگاری دارد.
9. انعطاف پذیری در فریم ورک NET Core. :
برنامه NET Core. می تواند در سطح کاربر یا سیستم یا با کانتینرهای Docker گسترش داده شود.
از اونجایی که دوست ندارم این مطلب رو بصورت ناقص با شما به اشتراک بگذارم، پیکربندی فریم ورک NET Core. رو با استفاده از یک شکل با هم بررسی می کنیم :
خوب دوستان، امروز سعی کردم بصورت خیلی ساده و مختصر، امکان آشنایی با فریم ورک NET Core. رو برای شما فراهم کنم، حتمن با ما همراه باشید چون در پست بعدی میخوام راجع به معماری MVC در فریم ورک NET Core. با همدیگه صحبت کنیم ....
اهداف دوره MVC Core :
1. در این دوره MVC Core، معماری Core، چگونگی کارکرد MVC Core، بررسی کامل یک Request Life Style و همچنین آموزش انواع MiddleWare، چرخه حیات Middle Ware و انواع آنها بویژه Middle Ware های جدیدی که برای ایمن سازی وبسایت ها از آنها استفاده می شود، آموزش داده می شوند. این بخش از جمله مهم ترین بخش های آموزشی بوده که 2 یا 3 جلسه بطول می انجامد.
2. در این دوره آموزش MVC Core، یک معماری لایه ای قدرتمند (کمی سبک تر از Onion Architecture) بصورت کامل و حرفه ای آموزش داده می شود.
3. در دوره آموزش ASP.Net Core، کلیه اصول طراحی پنج گانه Solid در قالب یک پروژه پیاده سازی می شود.
4. در آموزش MVC Core، کلیه مراحل ساخت بانک اطلاعاتی به روش Code First، Entity Framework و Fluent API آموزش داده می شوند.
5. در دوره MVC Core، کوئری نویسی حرفه ای برای Entity Framework، برای بازیابی انواع مختلفJoin ، SubQuery Table Drive، SubQuery Scollar و همچنین SubQuery نوع سوم، Dynamic Query (جستجو پویا) و گروه بندی داده ها آموزش داده می شود.
6. در دوره ASP.Net Core، تمامی مباحث MVC Core از جمله Model-View-Controller و ارتباط آنها با یکدیگر، بصورت گام به گام آموزش داده می شوند. دانشجویان پس از گذراندن مرحله بالا به توانایی علمی کافی در ساخت پروژه MVC Core می رسند.
7. در این دوره از آموزش پروژه محور ASP.Net Core، کلیه مراحل استفاده از بوت استرپ جهت ساخت پنل مدیریت ریسپانسیو آموزش داده می شود.
8. دانشجویان در دوره MVC Core قادر خواهند بود که بصورت صد در صد کاربردی، پروژه های خود را Full-Ajax کنند؛ بعبارت دیگر در ابتدا آموزش جامعی از یکی از library های فرانت اند و جاوا اسکریپت داده می شود و در بخش بعدی، پس از آموزش Ajax، از ترکیب Ajax با کتابخانه های کمکی مثل بوت استرپ، فرم هایی کاملن مشابه برنامه های تحت ویندوز (پاسخگو به ایونت های کیبورد در جستجو، قابلیت استفاده از Modal جهت افزودن و حذف، استفاده از Sweet Alert جهت نمایش پیغام ها و هشدارها و ...) استفاده می شود.
9. در دوره آموزش پروژه محور MVC Core می آموزید که مراحل ایمن سازی یک وبسایت جهت جلوگیری از هر نوع ورود غیرمجاز بصورت کاربردی و حرفه ای به چه شکل است. در این مرحله، تمامی مباحث identity شامل مدیریت کاربران، مدیریت نقش ها، مدیریت دسترسی نقش ها به بخش های سایت و همچنین استفاده از Claim ها آموزش داده می شود.
10. در این بخش از دوره آموزش MVC Core، تمامی مراحل ساخت یک فروشگاه الکترونیک، از صفر تا صد، بصورت پروژه محور آموزش داده می شود.
در دوره آموزش MVC Core می آموزید که برخلاف فیلم های آموزشی یا انتظار بسیاری از دانشجویان، معماری MVC فقط بعنوان یک پوسته برای پروژه های تحت وب استفاده می شود و تمامی بخش های پروژه در قالب یک معماری برگرفته شده از Onion Architecture ساخته می شود که فرآیند مدلسازی در بخشی جدا، فرآیند ذخیره و بازیابی در بخشی جدا و همچنین هماهنگی تمامی بخش های پروژه برای پیاده سازی قوانین تجاری (Business Rules) در بخش جداگانه ای قرار می گیرند. علاوه بر این، با توجه به قوانین پنج گانه SOLID برای هر یک از بخش های فوق، یک لایه انتزاعی (Abstraction) بصورت جداگانه طراحی می گردد. این دوره آموزشی از دو بخش تشکیل شده که در ابتدا این بخش ها تلاش می شود به شرح مختصری از فریمورک .NET و معماری MVC بپردازیم، سپس عناوین مورد نظر برای تدریس را ارائه دهیم.
آموزش برخی ویژگی های زبان سی شارپ
آموزش معماری ASP.Net Core و تشریح Request Life Cycle در ASP.Net Core
آموزش Entity Framework Code First و کاربردهای آن در برنامه نویسی ASP.Net Core
آموزش ذخیره و بازیابی داده ها در ASP.Net Core
پروژه عملی بخش اول از دوره MVC Core :
ساخت Class Diagram برای ساخت سایت خبری بصورت گام به گام بهمراه بانک اطلاعات بهینه سازی شده بر اساس Fluent API در ASP.NET Core
آشنایی با مفهوم View Model در دوره MVC Core
آموزش انواع خروجی های توابع Action در ASP.Net Core
آموزش نحوه ارسال اطلاعات از Actionها به Viewها
آموزش انواع Scope Variableها در ASP.Net Core
آموزش Routing در ASP.Net Core
آموزش Security و Login با استفاده از ASP Identity
آموزش Cookie در ASP.Net Core
آموزش Razor و قواعد استفاده از آن
آموزش Tag Helperها در ASP.Net Core
آموزش کامل View در ASP.Net Core
پروژه عملی بخش دوم از دوره MVC Core :
ساخت سایت خبری
برخی موارد دیگر که در کنار ساخت سایت خبری می آموزید :
آموزش معماری لایه ای
آموزش Jquery
آموزش Ajax
آموزش Roting در MVC Core