PDA

نسخه کامل مشاهده نسخه کامل : درک مدل MVC در برنامه نویسی



Web Design
09-08-2014, 01:37
MVC یکی از پایه ها برنامه نویسی شی گرایی می باشد که طبق اون برنامه نویسی ما به 3لایه Model, View و Controller تقسیم بندی میشود که ما به بررسی هرکدام از آنها می پردازیم.





[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]


بر طبق این مهندسی ابتدا کاربر درخواست خود را به Controller از طریق View ارسال میکند و Controller به آن رسیدگی می کند . Controller محلی برای انجام تمام فرآیند های نرم افزاری ما جز رابطه و آپدیت دیتابیس می باشد . Controller درخواست ما را گرفته و بررسی می کند و به View که خروجی های ما میباشند و کاربر آنها را می بیند پاسخ می دهد .
گاهی از Controller به Model درخواست ها رفته و در دیتابیس تغییراتی ایجاد شده و به View به طور غیر مستقیم و از طریق Controller درخواست ارسال می شود .
دقت کنید که Model با View هیچ رابطه مستقیمی ندارد و واسطه Controller باید باشد .
در آخر تمام درخواست ها به View یعنی خروجی ای که کابر مشاهده میکند ختم می شوند .

Mr.Pooya
29-08-2014, 10:18
سلام

MVC و شی گرایی جدا از هم می باشند ! شما حتی اگر شی گرا هم کار نکنید می تونید MVC رو پیاده سازی کنید !

موفق باشید

Web Design
29-08-2014, 13:48
ولی نه توی PHP دیگه MVC بدون شی گرایی معنا نداره ... اسمارتی ها هم برای View از OOP استفاده می کنند .

Mr.Pooya
29-08-2014, 19:07
ولی نه توی PHP دیگه MVC بدون شی گرایی معنا نداره ... اسمارتی ها هم برای View از OOP استفاده می کنند .

ببینید کاربرد یک چیزه تئوری چیز دیگه ای. شما حتی اگر Functional هم برنامه نویسی کنید تو PHP می تونید ساختار MVC رو پیاده سازی کنید. قبول دارم MVC تو شی گرایی خیلی بیشتر خودش رو نشون میده ولی دلیل بر این نیست بدون شی گرایی نشه MVC رو پیاده سازی کرد.

موفق باشید.

Web Design
29-08-2014, 23:22
حد اقل من توی PHP به شما ثابت میکنم 99% MVC رو بدون شی گرایی نموتونید پیاده کنید من به ساختار کلی مهندسی کاری ندارم اما MVC توی PHP واقعا بدون OOP معنا نداره اما خود مهندسی معنا دار هستش اما فقط برای تعریف نه کار کردن :n01:

البته ابنو بگم که از PHP هیچ چزی بعبد نیست :n13:

Mr.Pooya
30-08-2014, 15:25
حد اقل من توی PHP به شما ثابت میکنم 99% MVC رو بدون شی گرایی نموتونید پیاده کنید من به ساختار کلی مهندسی کاری ندارم اما MVC توی PHP واقعا بدون OOP معنا نداره اما خود مهندسی معنا دار هستش اما فقط برای تعریف نه کار کردن :n01:

البته ابنو بگم که از PHP هیچ چزی بعبد نیست :n13:

مطمئن باشید میشه ! اخه اصلا MVC چیزی نیست که بگیم یک سری پیش نیاز داشته باشه. شما نرم افزار رو به سه بخش تقسیم می کنی M.V.C به همین سادگی گفتن هم نیست ولی بدون OOP هم میشه چه تو PHP چه تو هر زبان دیگه ای. حالا اینکه کاربردش دقیقا کجاست بحثش جداست!

موفق باشید

atiishpare
10-09-2014, 11:53
MVC یکی از پایه ها برنامه نویسی شی گرایی می باشد که طبق اون برنامه نویسی ما به 3لایه Model, View و Controller تقسیم بندی میشود که ما به بررسی هرکدام از آنها می پردازیم.





[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]


بر طبق این مهندسی ابتدا کاربر درخواست خود را به Controller از طریق View ارسال میکند و Controller به آن رسیدگی می کند . Controller محلی برای انجام تمام فرآیند های نرم افزاری ما جز رابطه و آپدیت دیتابیس می باشد . Controller درخواست ما را گرفته و بررسی می کند و به View که خروجی های ما میباشند و کاربر آنها را می بیند پاسخ می دهد .
گاهی از Controller به Model درخواست ها رفته و در دیتابیس تغییراتی ایجاد شده و به View به طور غیر مستقیم و از طریق Controller درخواست ارسال می شود .
دقت کنید که Model با View هیچ رابطه مستقیمی ندارد و واسطه Controller باید باشد .
در آخر تمام درخواست ها به View یعنی خروجی ای که کابر مشاهده میکند ختم می شوند .


سلام دوست عزیز . میشه لطفا یکم بیشتر توضیح بدید؟ ممنوووونمممم:n16::n16:

hamedarian2009
10-09-2014, 12:34
سلام با تشکر از استارتر این تاپیک که مبحث بسیار خوبی رو شروع کردن امیدوارم که ادامه داشته باشه و مانند تاپیک های دیگر یکدفعه متوقف نشه
فقط یک نکته ای رو بگم که اشتباه رایجی هم هست


دقت کنید که Model با View هیچ رابطه مستقیمی ندارد و واسطه Controller باید باشد .

بسیاری از توسعه‌دهندگان وب که از MVC استفاده می‌کنند ، آنها به‌اشتباه فکر می‌کنند که View هیچ‌گونه ارتباط مستقیمی با Model ندارد و تمام داده‌های موردنیاز جهت نمایش توسط View، ازطریق Controller ارسال می‌شود. درحقیقت، این روند با اصول MVC ناسازگاری کامل دارد اما متأسفانه این روند تا جایی رواج داشته‌است که در کتاب‌های آموزش MVC و حتی در برخی از فریمورک‌های معروف (مثل CakePHP) نیز از آن استفاده شده است.

Web Design
10-09-2014, 17:06
ببینید کلا مشکل ما نیست ...
PHP زبان ساختار یافته ای نیست و کاملا ببدون اصول و ثاعده هستش پس نمیتونیم بگیم که کدومشون درسته این وسط . میتونیم فریمورک خودمون رو داشته باشیم با هر سبکی که دوس داریم :n13:

hamedarian2009
10-09-2014, 21:30
ببینید کلا مشکل ما نیست ...
PHP زبان ساختار یافته ای نیست و کاملا ببدون اصول و ثاعده هستش پس نمیتونیم بگیم که کدومشون درسته این وسط . میتونیم فریمورک خودمون رو داشته باشیم با هر سبکی که دوس داریم :n13:

البته بنده یه فریمورک با MVC پیاده سازی کردم و اصلا ویو من با کنترلر ارتباط مستقیم نداره و رابط همون کنترلره و حالا زیاد مهم هم نیست که ارتباط داشته باشن یا نه بهتره اصل قضیه رو ول نکنیم و بریم دنبال فرعش

Web Design
10-09-2014, 23:24
اصل ماجرا مدل هست که باید به درستی اجرا بشه دی\ه نکته های اینطوری شخصیه مثل مسواک برنامه نویسه :n02:

behnamy01
12-09-2014, 10:54
ادامه نمیدید دیگه؟ این فقط یک معرفی MVC هستش، میشه آموزش هم بدید کامل مثل شی گرایی؟

Web Design
12-09-2014, 23:31
ادامه نمیدید دیگه؟ این فقط یک معرفی MVC هستش، میشه آموزش هم بدید کامل مثل شی گرایی؟


MVC رو خیلی دوست دارم یاد بچه ها بدم اما استقبال چندانی از طرف کاربر نمیشه فکر می کنم :n13: