وقتی صحبت از معماری 3 لایه میشه یعنی اینکه پروژه شما باید به 3لایه یا 3بخش تقسیم بندی بشه
لایه اول:InterFace Layer
لایه دوم:Business Logic Layer
لایه سوم:Data Acess Layer
درسته که ظاهراکد نویسی زیاد میشه ولی در عوض کد ها بخش بندی و از هم جدا میشه که مزیت های زیادی داره مثلا هروقت که کار با پایگاه داده دارین سریعا به لایع سوم میرین و ...
اما توضیح کلی راجب لایه ها :
وقتی که داده ها از سمت کاربر ارسال می شه این داده ها به لایه دوم منتقل می شه.کار لایه دوم چک کردن مقادیر،و... هست
زمانی که داده ها از هر جهت "تمییز"و "سازگار"بودن به لایه سوم برای ذخیره در پایگاه داده منتقل میشه
این کلیت معماری 3لایه در طراحی وب سایت هستش
برای درک بیشتر و آسون تر با مثالی از Asp.Net این معماری رو توضیح میدم
فرض کنید یه پروژه نوشتین که دارای جدولی به نام MyUser هستش که اطلاعات کاربران در آن ذخیره میشه و دارای فیلد های Name,PassWord,...هستش و یه صفحه برای پروژتون طراحی کردین برای ثبت نام کاربران.
خوب چون جدول MyUser رو دارین باید یه کلاس به نام MyUser بسازید که دارای فیلد های این جدول باشه
(به طور کلی در معماری 3لایه برای هر جدول باید یه کلاس بسازید)
که من شبه کد های #C رو اینجا قرار میدم
حالا 2کلاس دیگه به نام هایBLL برای لایه دوم و DAL برای لایه سوم بسازیدلایه اول:InterFace Layer
لایه دوم:Business Logic Layer
لایه سوم:Data Acess Layer
درسته که ظاهراکد نویسی زیاد میشه ولی در عوض کد ها بخش بندی و از هم جدا میشه که مزیت های زیادی داره مثلا هروقت که کار با پایگاه داده دارین سریعا به لایع سوم میرین و ...
اما توضیح کلی راجب لایه ها :
وقتی که داده ها از سمت کاربر ارسال می شه این داده ها به لایه دوم منتقل می شه.کار لایه دوم چک کردن مقادیر،و... هست
زمانی که داده ها از هر جهت "تمییز"و "سازگار"بودن به لایه سوم برای ذخیره در پایگاه داده منتقل میشه
این کلیت معماری 3لایه در طراحی وب سایت هستش
برای درک بیشتر و آسون تر با مثالی از Asp.Net این معماری رو توضیح میدم
فرض کنید یه پروژه نوشتین که دارای جدولی به نام MyUser هستش که اطلاعات کاربران در آن ذخیره میشه و دارای فیلد های Name,PassWord,...هستش و یه صفحه برای پروژتون طراحی کردین برای ثبت نام کاربران.
خوب چون جدول MyUser رو دارین باید یه کلاس به نام MyUser بسازید که دارای فیلد های این جدول باشه
(به طور کلی در معماری 3لایه برای هر جدول باید یه کلاس بسازید)
که من شبه کد های #C رو اینجا قرار میدم
وقتی
کاربری به صفحه ثبت نام مراجعه میکنه و اطلاعات رو وارد میکنه، اطلاعات از
صفحه (لایه اول) گرفته شده و برای لایه دوم(BLL) ارسال میشه
لایه
دوم اطلاعات رو چک می کنه .مثلا این کاربر قبلا ثبت نام کرده یا خیر یا در
این مثال بالا در لایه دوم پسورد کاربر هش شده سپس برای لایه سوم اطلاعات
رو ارسال میکنه و در نهایت اطلاعات در دیتا بیس ذخیره میشه
هیچ نگران نباشین آخه هیچ مطلب مهم و تکنیکالی پشت این معماری نیس و کلیتش همون بود که گفتم
امیدوارم این پست بتونه کمک تون کرده باشه
(و یه نصیحت دوستانه اینکه از تکنولوژی Linq برای برقراری ارتباط با پایگاه داده استفاده کنین دیگه نیازی به نوشتن
کلاس
های مربوط به جدول های دیتا بیس نیس آخه Linq خودش از جداول و Store
Procedure ها کلاس میسازه و معماری 3لایه خیلی آسون تر پیاده سازی میشه)