آموزش ASP.NET Core MVC
شناسه پست: 3410
بازدید: 2640

در این سری آموزشی، میخواهیم یک بحث مفصل در مورد ASP.NET Core MVC داشته باشیم. اول از همه، کار خود را با بررسی معماری MVC شروع میکنیم و سپس به سراغ فریم ورک ASP.NET Core MVC میرویم. بعد از آن، ساختار پروژه را بررسی کرده و نگاهی به تطابق اجزای مختلف موجود در آن خواهیم انداخت. سپس در مورد ویژگیهای مختلف پشتیبانی شده توسط این فریم ورک، کار با داده ها، پیاده سازی تستهای واحد و غیره بحث خواهیم کرد.

رویکردی که ما میخواهیم دنبال کنیم این است که هر موضوعی را توسط یک نمونه کد کوچک و آسان جهت درک بیشتر یاد بگیریم. ایده این است که در پایان این مجموعه، ما باید دانش نسبتا خوبی از مفاهیم ASP.NET Core MVC داشته باشیم. همچنین، باید قادر به توسعه برنامه های ASP.NET Core MVC باشیم.

معماری MVC

الگوی معماری Model-View-Controller (MVC)، یک اپلیکیشن را در قالب 3 کامپوننت قرار میدهد: Views ،Models و Controllers. این الگو باعث میشود تا مفهوم جداسازی نگرانی ها (separation of concerns) در اپلیکیشن ما برقرار باشد. در این الگو، request های کاربر به سمت یک Controller مسیریابی (route) میشود. یک Model ،Controller را برای انجام اقدامات کاربر یا بازیابی داده ها فراخوانی میکند. سپس controller این Model را به یک View پاس داده و آن View به کاربر برگردانده میشود.

معماری mvc

Model در یک اپلیکیشن MVC، ارائه دهنده state اپلیکیشن و هر business logic یا عملیاتی است که باید توسط آن انجام شود. یک model همچنین می‌تواند حاوی logic جهت حفظ state اپلیکیشن باشد.

View ها مسئول ارائه محتوا از طریق رابط کاربری هستند. یک view در حالت ایده آل، باید شامل logic در حداقل ترین سطح ممکن و فقط باید وظیفه ارائه محتوا را داشته باشد.

Controller ها، کامپوننتهایی هستند که وظیفه handle کردن تعامل کاربر، کار با model و در نهایت انتخاب یک view جهت render شدن را بر عهده دارند. در الگوی MVC، کنترلر اولین نقطه ورود در فرآیند است و مسئول این است که نوع model مورد نظر جهت کار با آن و view مورد نظر جهت render کردن را انتخاب کند. به عبارت دیگر، Controller نحوه پاسخگویی برنامه به یک درخواست داده شده را کنترل می کند.

بنابراین مزیت این الگو این است که هر یک از این  component ها یک مسئولیت واحد دارند و کدنویسی، اشکال زدایی و آزمایش آنها به صورت مجزا آسان تر است.

ASP.NET Core MVC

ASP.NET Core MVC یک فریم ورک سبک، open-source با قابلیت تست پذیری بالا است که به طور یکپارچه با ASP.NET Core ادغام می شود.

ASP.NET Core MVC روشی مبتنی بر الگوها را برای ساخت وب سایت های داینامیک ارائه می دهد که امکان جداسازی دقیق نگرانی ها (separation of concerns) را فراهم می کند. به ما کنترل کامل بر روی نشانه گذاریها (markup) را می دهد، از توسعه مبتنی بر تست پشتیبانی می کند و به آخرین استانداردهای وب پایبند است.

بنابراین این یک نمای کلی از ASP.NET Core MVC بود.

مواردی که ما در این مجموعه پوشش خواهیم داد عبارتند از:

در قسمت اول این مجموعه، ما قصد داریم با ایجاد یک پروژه جدید ASP.NET Core MVC، کار خود را شروع کنیم.

نویسنده

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