60% تخفیف ویژه دوره تخصصی وردپرس به مدت محدود مشاهده دوره

آموزش mvc در php رایگان به زبان ساده

آموزش mvc در php یکی دیگر مباحث مهم و بسیارکاربردی در برنامه نویسی هست و اگر میخواهید تبدیل به یک برنامه نویس حرفه ای بشید باید معماری سه لایه mvc مسلط باشید در ویدیوی بالا آموزش mvc در php را بصورت مفهومی درک میکنید پس قبل از خواندن متن حتما ویدئوی بالارا ببینید….

 

نکته مهم : قبل از یادگیری mvc شما باید به مبحث شی گرایی و برنامه نویسی فانکشنال مسلط باشید. در پست های قبلی در مورد اینها بصورت ویدئویی توضیح دادم اگر ندیدید پیشنهاد میکنم اول اونارو ببینید که لینکشو پایین میذارم :

آموزش برنامه نویسی فانکشنال

آموزش شی گرایی در php

 

معماری mvc چیست؟

معماری mvc چیست؟ الان در همین حد بگم که یکی از جذاب ترین و کاربردی ترین مباحث برنامه نویسی هست که الزاما هر برنامه نویسی باید اونو بلد باشه. چرا چون پروژه های برنامه نویسی مون سازمان یافته تر و منظم تر بشه اما دقیقا mvc چیه…

چرا باید mvc رو یاد بگیریم؟

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

 

یادگیری mvc چجوریه؟

شمایی که میخوای معماری mvc رو یادبگیری حتما قبلا مبحث شی گرایی و مبحث برنامه نویسی فانکشنال رو یادگرفتی اما تفاوتی که در یادگیری معماری سه لایه mvc با مباحث قبلی داره اینه که شما نیاز نیست مثل مباحث شی گرایی یا فانکشنال بیاید یک سری کدها و سینتکس های جدید از php یادبگیری و بعد برید سراغ مبحث اصلی! نه! در واقع شما هرآنچه که از کدنویسی php لازمه رو قبلا یادگرفتید و در معماری mvc فقط قراره که ساختار مدیریت پروژتون عوض بشه. و اونم در جهت راحت تر شدن و سازمان یافته تر شدن پروژمون. درست شد؟ حالا بریم سر اصل مطلب

 

پیشنهاد وبسافت۳ : نقشه راه برنامه نویسی

 

آموزش mvc در php

MVC مخفف سه کلمه Model – View و Controller هست.

M به model اشاره میکنه

V به view اشاره میکنه

C هم مربوط به کنترلر هست.

mvc میگه آقا شما سه نوع کد داری توی پروژت ، این سه نوع کد باید ازهم جدا بشن و هرکدوم در یک بخش قراربگیرن

نوع اول کدهایی که با دیتابیس و جدول ها در ارتباطن و عمدتا دستورات sql مثل select – insert – edit – update اینها هستن که وظیفه ارسال و دریافت اطلاعات از دیتابیس رو بر عهده دارن. اینها مربوط میشن به بخش مدل و جاشون توی فولدر model هست

نوع دوم کدهای html هستن همون بحث فرانت اند قالب که قراره صفحه وب رو ایجاد بکنه و به کاربر نمایش داده بشه. که این مروبط میشه به بخش ویو و جاشون توی فولدر view هست.

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

حالا درخواستی که به برنامه ارسال میشه یا urlی که فراخوانی میشه بسته به نوع درخواست متصل میشه به یکی از فانکشن هایی که داخل اون کلاس هست. فرض کنید اون درخواست اینه که مثلا ۱۰ تا پست آخر رو نمایش بده
خب کنترلر این درخواست رو دریافت میکنه میبینه باید ۱۰ تا پست آخر رو نمایش بده چیکار میکنه؟ یه ارتباط میزنه با بخش مدل میگه مدل جان لطفا ۱۰ تا پست آخر رو از دیتابیس دربیار به من بده، مدل میگه اوکی و ده تا پست آخر رو بهش میده

حالا کنترلر این ۱۰ تا پست آخر رو اگر پردازش یا تغییراتی نیاز هست روش انجام میده و اطلاعات رو کامپکت میکنه بسته بندی میکنه میده به ویو! view هم با یک قالب متناسب اطلاعات رو به کاربر نمایش میده و تماااام! همین! همین قضیه رو اگه درک بکنید نصف راه یادگیری mvc رو رفتید.

معماری mvc

 

 

مزیتی به نام سیستم روتینگ در mvc

استفاده از سیستم روتینگ برای مدیریت آدرس ها و url ها، یکی از بزرگ ترین تفاوت هایی است که در پروژه های mvc و غیر mvc وجود داره و از مهمترین مزیت های معماری mvc به حساب میاد. چه فرقی کرده…؟

 

 

ببینید در پروژه های غیر mvc آدرس های فراخوانی شده معمولا به یک فایل مشخصی اشاره میکنه مثلا اگر url مورد نظر به این شکل باشه websoft3.com/post/show.php به این معنی هست که داخل فولدر اصلی پروژه، فولدری با نام post و داخل آن دقیقا فایلی با نام show.php وجود داره یعنی برای آدرس دهی، مستقیم به فایل اشاره میشد و مسیر تمام فایل های ما مشخص میشد که این قضیه بلحاظ امنیتی مشکلات زیادی داشت و سطح امنیت پروژه رو به شدت کاهش میداد.

اما در پروژه های mvc به این شکل نیست و ما یه چیزی داریم تحت عنوان سیستم روتینگ که بواسطه آن آدرس ها و url ها کنترل و مدیریت میشه. نکته مهم اینجاست که در این سیستم دیگه در آدرس دهی ها مستقیم به فایل اشاره نمیشه و در پایان آدرس ها به هیچ عنوان پسوند فایل.php ذکر نمیشه بنابراین مسیر فایلها مشخص نیست. بطور مثال…

بطور مثال اگر url مورد نظر به این شکل باشه websoft3.com/post/show به این معنی نیست که مشابه مثال بالا الزاما فولدری بانام post وجود داشته باشه و داخلش فایلی با نام show وجود داشته باشه و الزاما اون فایل اجرا بشه. درواقع ما با استفاده از سیستم روتینگ مشخص میکنیم که اگر چنین آدرسی فراخوانی شد چه اتفاقی بیوفته، مثلا میتونیم تعیین کنیم که صفحه اصلی لود بشه یا صفحه لاگین باز بشه یا هرچیز دیگه.

سیستم روتینگ mvc

آموزش mvc در php پس متوجه شدیم که یکی از مهم ترین تفاوت هایی که در پروژه های mvc و غیر mvc وجود داره استفاده از سیستم روتینگ هست که به شدت سطح کیفی و امنیت پروژه رو بالا میبره و باعث میشه کنترل و مدیریت بهتری روی فراخوانی و آدرس دهی صفحات مختلف داشته باشیم.

 

چرا آموزش php mvc مهم است؟

چرا آموزش php mvc مهم است؟ وقتی سری به سایت های آگهی استخدامی برنامه نویسی میزنیم میبینیم اکثر شرکت ها دنبال برنامه نویس هایی هستند که به معماری mvc مسلط هستندچرا؟ با توجه به اینکه معماری mvc یک الگو و استاندارد شناخته شده جهانی برای پروژه های برنامه نویسی محسوب میشود، شما براحتی بتوانید با پروژه های جاری شرکت ارتباط برقرار کنید و کار خود را شروع کنید یا اگر به هر دلیلی برنامه نویس پروژه را نیمه تمام رها کرد پروژه روی زمین نماند و یک برنامه نویس دیگر براحتی پروژه را ادامه دهد بدون اینکه مشکل خاصی پیش بیاید. درصورتی که اگر از معماری mvc استفاده نمیشد قطعا این مورد امکان پذیر نبود چرا که هر برنامه نویسی سبک و سلیقه خاص خودش را در برنامه نویسی دارد بنابراین در اینجور موارد پروژه به یک شخص خاص وابسته میشود و این ریسک بزرگی برای کار فرمایان و مدیران محسوب میشود.

 

حتی اگر فری لنسر هم باشید و اغلب کارفرمایان ترجیح میدهند پروژه های خود را به فردی بسپارند که با الگو و ساختار جهانی کار میکند پس اگر برنامه نویس هستید اما هنوز به معماری mvc مسلط نشدید پیشنهاد میکنم همین امروز اقدام به یادگیری آن کنید همانطور که بالاترهم اشاره کردم در معماری mvc شما قرار نیست سینتکس و کدهای جدید یادبگیرید، صرفا ساختار و مدل اجرای پروژه را میاموزید آن هم در جهت سازمان یافته تر شدن پروژه پس کاملا ارزشش را دارد که کمی وقت بگذارید و این مهم را یادبگیرید

 

دوستان عزیز امیدوارم به یک درک کلی از آموزش mvc در php رسیده باشید و مورد توجه تون قرار گرفته باشه اگر سوال یا ابهامی در مورد این پست دارید حتما کامنت بزارید پاسخگو هستیم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *