خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


آموزش برنامه نویسی asp net core — روش نصب + معرفی منابع

آموزش برنامه نویسی asp net core — روش نصب + معرفی منابع
وقتی که مایکروسافت سرویس گیت هاب را آن هم به قیمت \(7.5\) میلیارد دلار خریداری کرد، خیلی ها بدبینانه به موضوع نگاه کردند و پیش بینی کردند که با آن انحصاری طلبی که از مایکروسافت سراغ داریم، دیر یا زود باید برنامه نویسان منبع باز از گیت هاب به سرویس های مشابه دیگر کوچ کنند. اما به مرور زمان با تغییر رفتار مایکروسافت کم کم این سیگنال دریافت می شود که مایکروسافت هم خودش را برای ورود به دنیای منبع باز و شاید به دوران حکومت بدون انحصار طلبی نزدیک می شود. بی گمان آیندۀ نرم افزار را پروژه های منبع باز و در صدر آنها گنوم رقم خواهند زد. مایکروسافت در قدم اول سورس کد کتابخانه های دات نت فریم ورک را منتشر کرد تا اطمینان برنامه نویسان را جلب کند. و اینک در یک قدم رویایی دیگر محصولی محشر و عالی و البته نه بی نظیر را به بازار ارائه داده است و آن را ASP.NET core نامیده است. اگر از برنامه نویسان php باشید و با فریم ورکی همچون لاراول آشنایی داشته باشید، این حجم از شباهت شما را شگفت زده خواهد کرد. جای خالی چنین محصولی واقعاً در سبد محصولات مایکروسافتی خالی بود، به شخصه ورود ASP.NET core را به جامعۀ برنامه نویسان ASP تبریک می گویم. و اما در ادامه می خواهم اندکی به ویژگی هایی که این محصول را خاص کرده است بپردازم.

یک نکته ای که در همین آغاز آموزش برنامه نویسی asp net core باید به آن اشاره کنم اینست که asp net core سطح مبتدی یا پیشرفته ندارد، یعنی شما در اینجا بلافاصله وارد طراحی پروژه های حرفه ای می شوید. اساساً ماهیت این فریم ورک به نحوی است که با تایپ چند دستور ساده یک سایت کامل را تحویل شما می دهد. برای اینکه به صورت کاربردی وارد دنیای ASP.NET core شوید توصیه من به شما استفاده از آموزش پروژه محور ASP.NET Core می باشد که در فرادرس منتشر شده است.


آموزش برنامه نویسی asp net core

ویژگی های مهم برنامه نویسی asp net core


اولین ویژگی بسیار مهم و شگفت انگیز (از این بابت که مایکروسافت آن را ارائه کرده است) در مورد ASP.NET core اینست که یک محصول کراس پلتفرم \(\text{cross-platform}\) است. یعنی بر روی پلتفرم های مختلف قابل نصب و اجرا می باشد. با توجه به اینکه این محصول در آغاز زندگی اش قرار دارد، فعلاً بر روی سه پلتفرم مهم و پر کاربر ویندوز، لینوکس و سیستم عامل مک قابل نصب و استفاده است. دومین ویژگی اش اینست که یک محصول مناسب کارهای ابری است و از آن برای تولید برنامه های تحت وب استفاده می شود. ویژگی بعدی آن منبع باز بودنش است. شما به سادگی می توانید کل کد منبع این پروژه را از آدرس گیتهاب آن (+) دانلود کنید. از ASP.NET core می توانید برای تولید محصولات ابری متصل به اینترنت همچون برنامه های تحت وب، برنامه های اینترنت اشیاء، و ساخت بک اند (backend) برنامه های موبایل استفاده کنید. نکتۀ بسیار مهم دیگر آن کاملاً رایگان بودن آن است. یکی از نکات برجستۀ دیگر آن که باید واقعاً در این زمینه به مایکروسافت احسن گفت، کاملاً ماژولار بودن آن است که منجر شده است بسیار چابک و سریع عمل کند و در عین حال بسیار هم انعطاف پذیر باشد.

داستان ویژگی ها و امتیازات ASP.NET core به همینجا ختم نمی شود و می توان موارد بسیار دیگری را نیز در این ارتباط بر شمرد، اما در اینجا می خواهم یکی دیگر از ویژگی هایش را که بیشتر به برنامه ها و محصولات خانوادۀ لینوکس شباهت دارد مطرح کنم و آن اینست که شما همزمان می توانید نسخه های مختلفی از این محصول را روی یک سیستم داشته باشید. این موضوع از آن جهت بسیار حائز اهمیت است که معمولاً برنامه نویسان از نسخۀ خاصی از کتابخانه های کد یا فریم ورک ها در پروژۀ شان استفاده می کنید و از آنجا که با آن نسخۀ خاص تمامی فرآیندهای تست را گذرانده اند، تمایلی ندارند که بی دلیل و بدون گذراندن مراحل کافی به نسخۀ بالاتر آن فریم ورک یا کتابخانه کوچ کنند. ASP.NET core هم اکنون این امتیاز را برای آنها قائل می شود که به هر نسخه ای که مد نظرشان بود ارجاع بدهند و چندین و چند نسخۀ متفاوت را به راحتی بر روی یک سیستم مدیریت می کند.

آموزش برنامه نویسی asp net core
بدون شک زیبایی ظاهری نرم افزارها از اهمیت بسیار بالایی برخوردار است و کاربران همواره این موضوع را در صدر توجهشان قرار می دهند. یکی از فریم ورک ها بسیار قدرتمند در این حوزه Blazor می باشد که خوشبختانه با ASP.NET core کاملاً سازگار و هماهنگ می باشد. اگر به زیبایی نرم افزارهایتان اهمیت می دهید، پیشنهاد می کنم آموزش آشنایی با فریم ‌ورک Blazor در ASP.NET Core برای طراحی رابط کاربری را که در فرادرس انتشار یافته است، مشاهده کنید.


ساختن برنامه Hello World با آموزش برنامه نویسی asp net core


بیشتر از این منتظرتان نمی گذارم. به دنیای برنامه نویسی ASP.NET core خوش آمدید. می خواهیم ظرف مدت کمتر از 5 دقیقه با برنامه نویسی asp net core اولین برنامۀ کاملمان را با ASP.NET core بسازیم. در ادامه مراحل را همراه با آموزش پیش بروید تا از خروجی کار شگفت زده شوید. این آموزش هیچ پیش نیازی ندارد و اساساً بدون حتی یک خط کدنویسی انجام می شود. در پایان این مراحل شما یک برنامۀ تحت وب کامل که با فناوری asp net core تولید شده است را در اختیار دارید که پیام مشهور \(\text{Hello, World!}\) در آن نمایان خواهد بود.

  1. قدم اول اینست که \(\text{Download .NET SDK}\) را دانلود و نصب کنید. حجم این برنامه چیزی حدود \(150\) مگابایت است و از اینجا می توانید آن را دانلود کنید. نصبش هم به سادگی آب خوردن است و فقط کافیست یکی دو تا Next و بعدش Finish بزنید.

  2. بعد از اینکه برنامۀ بالا را نصب کردید، با دستور زیر صحت نصب را بیازمایید. این دستور را باید در Command Prompt ویندوز وارد کنید.

    dotnet

  3. اگر نصب به درستی انجام پذیرفته باشد (که در \(99\%\) مواقع هم همینطور است) چیزی مشابه پیام زیر را باید مشاهده کنید. اگر غیر از این باشد یعنی یک جای نصب اشکال دارد و باید بررسی شود.

    Usage: dotnet [options]
    Usage: dotnet [path-to-application]

    Options:
    -h|--help Display help.
    --info Display .NET information.
    --list-sdks Display the installed SDKs.
    --list-runtimes Display the installed runtimes.

    path-to-application:
    The path to an application .dll file to execute.

  4. حالا وقتش رسیده این پروژه را بسازیم. شگفت زده خواهید شد اگر بدانید که ساخت این پروژه صرفاً با تایپ یک خط دستور زیر در Command Prompt ویندوز و اجرای آن صورت خواهد پذیرفت.

    dotnet new webApp -o myWebApp --no-https

  5. هم اکنون می توانید به کمک دستور cd در Command Prompt وارد پوشه ای شوید که پروژه در آن ایجاد شده است.

    cd myWebApp
  6. حالا وقتش رسیده که این برنامه کامپایل و سپس اجرا شود. دستور زیر این کار را برای شما انجام می دهد.

    dotnet watch run
  7. تبریک می گوییم. وبسایت شما آماده است. به دنیای ASP.NET core خوش آمدید.

    آموزش برنامه نویسی asp net core

ممکن است دات نت فریم ورک را با دات نت کُر اشتباه بگیرید. اگر می خواهید درک عمیق تری نسبت به این دو پیدا کنید توصیه می کنم مقایسۀ \(\text{.NET Core}\) و \(\text{.NET Framework}\) را که در فرادرس منتشر شده است بخوانید.


تجزیه و تحلیل برنامۀ نوشته شده با ASP.NET core


در قسمت پیشین صرفاً یک سری دستورالعمل به شما ارائه دادیم و شما با دنبال کردن آنها موفق شدید که به سادگی آب خوردن یک پروژۀ کامل بسازید که در واقع یک برنامۀ تحت وب را شامل می شد. در اینجا می خواهیم کمی موشکافانه تر به قضیه نگاه کنیم. بخش اول از مراحل هفت گانۀ ایجاد این پروژه که نصب sdk می باشد، فقط یکبار قرار است انجام شود و طبیعتاً دیگر لازم نیست در پروژه های بعدی اتفاق بیفتد. بخش دوم و سوم هم که تست صحت درستی نصب است و از این رو آنهم فقط همین یک بار صورت می پذیرد. پس در واقع مراحل اصلی ما \(4\) گام می باشند که از مرحلۀ \(4\) آغاز می شوند.

مرحلۀ چهارم یا بهتر است بگوییم گام اصلی اول تایپ دستور زیر در Command Prompt بود.

dotnet new webApp -o myWebApp --no-https

دستور \(\text{dotnet new}\) یک برنامۀ وب جدید را می سازد. پارامتر \(\text{webApp}\) در این دستور، در واقع قالبی (template) است که برای ساخت برنامۀ وب شما از آن استفاده می شود. پارامتر \(\text{-o}\) یک پوشه برای محل ذخیره سازی برنامۀ تحت وب شما می سازد. در واقع بسته به اینکه در Command Prompt در چه مسیری از ویندوز قرار دارید، این پوشه در داخل آن مسیر ایجاد خواهد شد. بنابراین اگر در مسیر درستی قرار ندارید ابتدا باید به کمک دستور cd با پیمایش پوشه ها و درایوهای ویندوز به مسیر مورد نظر بروید و سپس این دستور را اجرا کنید. پارامترهای \(\text{--no-https}\) تعیین می کنند که پروتکل امنیتی \(\text{HTTPS}\) فعال نشود.

و اما در مرحلۀ \(5\) که دستور \(\text{cd myWebApp}\) را اجرا کردید. در واقع صرفاً با یک دستور سادۀ ویندوزی وارد پوشۀ پروژه شدید و ارتباطی به ASP.NET core ندارد. اگر در درک این دستور ساده مشکل دارید، شاید لازم باشد کمی بر Command Prompt ویندوز تسلط پیدا کنید. در این صورت پیشنهاد می کنیم آموزش کاربردی خط فرمان ویندوز (Command Prompt یا CMD) که از مجموعه آموزش های انتشار یافته در فرادرس می باشد را ببینید.


در گام ششم هم با دستور \(\text{dotnet watch run}\) برنامۀ شما کامپایل و سپس اجرا می شود.

خوب در ادامه می خواهیم نگاهی به ساختار پروژۀ ایجاد شده بیندازیم. همانطور که در تصویر زیر می بینید تعداد قابل توجهی پوشه و فایل درون این پروژه قرار دارد.

آموزش برنامه نویسی asp net core
فایل هایی که با پسوند \(\text{.cs}\) ایجاد شده اند، فایل هایی نوشته شده به زبان برنامه نویسی سی شارپ می باشند. در مسیر برنامه پوشه ای بنام \(\text{wwwroot}\) قرار دارد که فایل های مربوط به برنامه نویسی فرانت اند درون آن جای گرفته اند. این فایل ها شامل فایل های css ، فایل های جاوا اسکریپت و کتابخانه های سمت کلاینت مورد استفاده می باشند. چهار کتابخانۀ مهمی که در این پوشه به چشم می آیند شامل موارد زیر می باشند:

  • bootstrap: که فریم ورکی برای طراحی ظاهر سایت می باشد و عمدۀ کدهای آن css اند و البته بخش قابل توجهی هم کدهای جاوا اسکریپت برای برنامه نویسی واکنش گرا درونش جای سازی شده است.
  • jquery: یک کتابخانۀ کد مشهور می باشد که امروزه در بسیاری از برنامه های تحت وب می توانیم آن را مشاهده کنیم.
  • دو کتابخانۀ دیگر با اسامی \(\text{jquery-validation}\) و \(\text{jquery-validation-unobtrusive}\) را نیز می توان در این پوشه یافت که اعتبار سنجی های سمت کلاینت را برای ما آسان می سازند.

اگر اهل سیستم عامل ویندوز نیستید و از مشتاقان خانوادۀ لینوکس هستید، باید خدمتتان عرض کنم که به شخصه از روی کنجکاوی فناوری ASP.NET core مایکروسافت را بر روی نسخۀ \(\text{21.10}\) از سیستم عامل اوبونتو تست کردم و بدون کوچکترین مشکلی برنامه کامپایل و اجرا شد. البته باید بگویم که نصب خود SDK اولیه در اوبونتو متفاوت بود که خوب آنهم با راهنمای گام به گامی که مایکروسافت ارائه کرده بود، کار سختی نبود.

آموزش برنامه نویسی asp net core
فایل هایی هم که در سیستم عامل اوبونتو ایجاد شدند، کاملاً مشابه فایل های ایجاد شده در محیط ویندوز بودند.

آموزش برنامه نویسی asp net core

کلام آخر درباره آموزش برنامه نویسی asp net core


تا اینجای کار با آموزش برنامه نویسی asp net core ، با کلیات کار آشنا شدید که ASP.NET core یک فناوری بسیار خوب و چند پلتفرمه می باشد که با توجه به منبع باز بودن و در ضمن رایگان بودن آن، می تواند گزینۀ بسیار مناسبی برای تولید نرم افزارهای تحت وب باشد. فناوری ASP.NET core از جنس RAD (مخفف Rapid application development) می باشد که برای توسعۀ سریع برنامه های کاربردی مورد استفاده قرار می گیرد. در این گونه فناوری های معمولاً با تکیه بر الگوها و قالب های آماده ای که در نوع خود بهترین می باشند، سعی بر توسعۀ سریع برنامه ها می شود. اگر بخواهم به یک نمونۀ مشهور از این فناوری البته توسعه یافته برای محیط php داشته باشم، می توانم به فریم ورک لاراول اشاره کنم که در بین برنامه نویسان php از محبوبیت بالایی برخوردار می باشد. البته به جهاتی ASP.NET core بر آن هم برتری دارد و آن جنبه اینست که کراس پلتفرم می باشد.



نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز