برای ورود به پرتال وب سایت اسکریپت دات کام کلیک کنید

امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
معماری سه لایه چیست؟
#1
Question 
سلام :
آیا کسی از دوستان می تونه به زبان ساده معماری سه لایه رو توضیح بده؟ Confused
ممنونم
لینک قابل نمایش نیست . لطفا ثبت نام کنید و یا وارد سایت شوید
پاسخ }
سپاس شده توسط
#2
در معماری سه لایه تمام برنامه به چندین بخش تقسیم می شود. این بخش ها می توانند فیزیکی یا منطقی باشند. هر بخش کار خاصی را انجام می دهد مثلا نمایش اینترفیس کاربر یا دسترسی به داده ها. برنامه می تواند به هر تعداد لایه داشته باشد ولی به هر حال بیشتر برنامه ها سه لایه مجزا دارند که عبارتند از :

Presentation Layer
Business Logic Layer
Data Access Layer

همان طور که احتمالا حدس زده اید، لایه Presentation چیزی نیست به جز بخشی از نرم افزار که با کاربر برنامه شما ارتباط برقرار می کند ( اینترفیس برنامه شماست ) نمایش داده ها به کاربر نهایی و اجازه به آنان برای ارتباط داشتن با داده ها، اصلی ترین وظیفه این لایه است. در بیشتر موارد داده هایی که توسط کاربر وارد می شوند نیاز به اعتبارسنجی یا پردازش اضافی دارند. این مسوولیت لایه Business Logic است. در نهایت داده های برنامه شما نیاز به ذخیره و بازیابی از طریق یک انبار داده دارند ( مثلا سیستم مدیریت دیتابیس های رابطه ای یا RDBMS و یا XML , .. ) این وظیفه توسط لایه دسترسی به داده انجام می شود. به طور خلاصه، فرآیند مورد نظر ما این گونه کار می کند:

کاربر برای داده های برنامه درخواستی ارسال می کند.
لایه Data Access داده های مورد نظر را بازیابی می کند و از طریق لایه Business Logic آن ها را به لایه نمایش می فرستد.بعضی مواقع لایه دسترسی به داده ها، این داده ها را مستقیما به لایه نمایش ارسال می کند.
لایه نمایش اطلاعاتی که باید نمایش داده شوند را از طریق لایه Business Logic دریافت می کند.
کاربر داده ها را تغییر می دهد و عمل مناسب در مورد آن ها را اجرا می کند ( مثل اضافه یا به روز کردن داده ها )
لایه Business Logic صحت داده های وارد شده توسط کاربر را بررسی می کند ( داده ها را اعتبار سنجی می کند)
اگر داده ها معتبر باشند آن ها را برای به روز رسانی در بانک اطلاعاتی به دست لایه دسترسی به داده می سپارد.

از سايت وردپرس فارسي
پاسخ }
سپاس شده توسط monopen


پرش به انجمن: