PDA

View Full Version : سوال: چگونه بر پایه معماری سه لایه پروژه را تحلیل کنیم؟



1razzaghi
پنج شنبه 29 تیر 1391, 10:32 صبح
با عرض سلام و خسته نباشید
معمولا تو تحلیل پروژه هام از UML برای مدل سازی استفاده می کنم
اما متاسفانه هنوز برام جا نیفتاده که وقتی می خوام نمودار کلاس ها رو برای برنامه ای که می خوام با فریمورک Cakephp بنویسم، رسم کنم چه خاصیت هایی رو برای کلاس در نظر بگیرم.

برای مثال تو حالت معمولی که خودمون کد میزدیم(بدون فریمورک و ساختار سه لایه!) برای کلاس دانشجو موارد زیر رو در نظر می گرفتیم :
صفات کلاس :
نام، نام خانوادگی، شماره دانشجویی، رشته و..
توابع عضو کلاس :
ثبت نام، ویرایش اطلاعات، و...

بعد ممکن بود کلاس دانشجو از کلاس کاربران ارث بری کنه.برای مثال ورود به سیستم برای همه کاربران یکسان هست و از تابع ورود کلاس کاربر برای همه استفاده می کردیم.

یا مثلا تو سازنده هر کلاسی مثل دانشجو صفاتش رو از دیتابیس می گرفتیم.

اما دارم یکم تو کیک گیج میزنم.خودم که فکر کردم دیدم مهمترین جزء تو منطق MVC همون لایه Controller هست که تقریبا منطق برنامه رو شامل میشه. گفتم پس هر چی Controller دارم بیام براش یه نمودار کلاس در نظر بگیرم. ولی باز که نگاه می کنم تو لایه Model هم کلاس های کار با دیتابیس داریم و اون کلاس ها هم می تونن صفات عضو کلاس داشته باشن(مثل خصوصیات اعتبارسنجی، روابط بین مدل ها و...) و یا توابع عضو کلاس(اعتبار سنجی های تعریف شده توسط کاربر یا توابع beforSave و..).
تازه ارتباطات اصلی بین کلاس ها تو لایه مدل تعریف میشه نه کنترلر!
لایه View رو هم که نمی دونم کجا تو تحلیل میاد؟(اصلا لازمه که بیاد؟!)

یا برای مثال یه سری خصوصیات تو لایه Controller داریم مثل uses,component,helper,name,... که باید اونا رو بیام یا نه

در کل گیج شدم یه مقداریhttp://forum.cakephp.ir/images/smilies/confused.gif

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