دسترسی به لایه data access از لایه Business logic?!!!!
سلام
با پیش فرض گرفتن چند اصل در معماری 3 لایه یک سوال داشتم:
1- لایه ی Data Access مربوط به دستیابی به اطلاعات است پس دستورات مربوط به اتصال به پایگاه داده و اجرای StoredProcidure ها را در آن می نویسیم
2-لایه ی business logic مربوط به چک کردن شرط ها و قوانین ست
3-لایه ها هم به طور مستقیم با هم می توانند ارتباط داشته باشند نه برعکس یعنی لایه Data Access نمی تواند به لایه business logic دسترسی داشته باشد.
ما میخواهیم اطلاعاتی که کاربر وارد کرده را بخوانیم و چک کنیم که اگرID وارد شده توسط فرد موجود باشد بقیه ی اطلاعات را درDataBase ثبت کند
حالا ما باید شرط موجود بودن ID را در لایه business logic بنویسیم .
تا اینجاش درست.
ولی چه جوری می تونیم در لایه Data Access بگیم که اگر شرط چک شده در لایه business درست بود بیا این دستورات رو اجرا کن و اطلاعات رو در دیتابیس Save کن؟
لایه ها که برعکس نمی تونن به هم دسترسی داشته باشن؟
An Example of a Multi Tier Architecture for Linq to Sql
نقل قول:
نوشته شده توسط
اَرژنگ
اگر دارید با دات نت ۳.۰ کار میکنید بیخیال این روشها دیگر قدیمی شدند، روشهایه جدید از LINQ استفاده میکنند.
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
من تازه دارم راجع به معماری 3 لایه چیزهایی یاد میگیرم
یه جا خوندم که فقط لایه UI روی کلاینت ها قرار میگیره و دو لایه دیگه بر روی سرور هستند
آیا این درسته؟
در این صورت باید از socket programing استفاده کنم یا راه حل دیگه برای دسترسی به متدهای اون دولایه که روی سرور هستند وجود داره؟
ببخشید اگه سوالم مبتدیانه هستش چون تازه کارم
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
واقعا این برنامه های نوشته شده تا حالا سه لایه است؟
ولاگ من در مورد برنامه های چند لایه حتما ببینید و ادامه دارد!!
نوشته های فنی و شخصی من
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
تو مباحثoopیکی از اجزا اون کپسوله سازی (یعنی نیازهای مسئله:property,method,field,.....)تو لایه بعد استفاده و به کارگیری از ایناست.
نقل قول: نمونه برنامه های 3 لایه (فقط کاربردی)
سلام
ممنون ازراهنمایی قشنگتون
من دانشجوی ترم آخر کارشناسی هستم
استاد تاکید دارن که برنامه نویسی پروژه سه لایه صورت بگیره
من هیچ اطلاعاتی ندارم
توی برنامه نویسی هم ضعیفم
اونم سه لایه با سی شارپ باید باشه
الان چند روزیه می گردم یه منبعی پیدا کنم که بتونه کامل کمک کنه اما اکثرا توضیح مختصر دادند
و بعد از توضیح هیچ پروژه عملی ندیدم
لطفا کتابی یا هرچی که فکر می کنین معرفی کنید بتونم بخونم یاد بگیرم
سی شارپ رو دارم می خونم اما سه لایه نمی دونم به چه شکل هست.
کمکم کنید
ممنون
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
سلام
ممنون از این همه راهنمایی ها ی خوبتون
دانشجوی ترم آخر کارشناسیم
پروژه آخرم باید با سی شارپ و برنامه نویسی سه لایه باشه
هیچ اطلاعاتی ندارم . سی شارپ رو دارم می خونم اما نمی دونم برنامه نویسی سه لایه چطوری هستش
لطفا کمکم کنید
کتابی معرفی کنید که بتونم با خوندش برنامه نویسی سه لایه رو انجام بدم ممنونم
آقای عسگری سایت بهم اجازه نمی ده بهتون پیام بفرستم مجبورم همین جا بنویسم.
خواهش می کنم در مورد برنامه نویسی سه لایه کتابی جامع معرفی کنید. سی شارپ رو دارم می خونم ولی از این برنامه نویسی سه لایه سر در نمیارم. استاد هم سایت با سی شارپ و برنامه نویسی سه لایه می خواد . تازه LINQ رو هم ازمون می خواد . می خوام واقعا رو پروژه ام کار کنم . اما فعلا فقط توضیح در مورد سه لایه دیدم. مثل کتاب سی شارپ کتابی که بخواد در این زمینه کمک کنه پیدا نکردم. درمورد LINQ هم کمکم کنید. جسارت من رو می بخشید اما Gmail من اینه :Ameneh.Reza@Gmail.com
می بخشید چاره ای نداشتم اینجا نوشتم
نقل قول: 3 Tier sample in C#
نقل قول:
نوشته شده توسط
sasanazizi
BARNAMEH NEVISI 3 LAYER
این مثال خوبی نیست، GUI با داتابیس مستقیماً ارتباط دارد، برایه شروع یک مثال ساده به این
https://barnamenevis.org/showth...137#post952137
یک نگاه بندازید.
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
سلام
خواهش می کنم کتابی رو معرفی کنید که از پایه توضیح بده
من اصلا سه لایه نمی دونم به چه صورت هست.
البته کتاب سی شارپ رو دارم می خونم
با تشکر
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
نقل قول:
نوشته شده توسط
razavi_university
آرژنگ جان لینکهایی که گذاشتی بیشتر مربوط به ASP بودند
یعنی لایه سوم ASP بود
مقالهای یا پروژهای داری که 3 لایه فقط در WinApp و DataBase باشد.
ممنون
این یک مثال ساده است که برایه شروع و راه انداختن بکار بیاد، https://barnamenevis.org/showth...137#post952137
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
نقل قول:
نوشته شده توسط
Green Way
سلام
خواهش می کنم کتابی رو معرفی کنید که از پایه توضیح بده
من اصلا سه لایه نمی دونم به چه صورت هست.
البته کتاب سی شارپ رو دارم می خونم
با تشکر
لایه سازی برنامه نوشتن چیزی نیست که در یک کتاب باشد، اگر بشه که برنامه را به قسمتهایه منطقی تقسیم کرد و هر قسمت وظائف مشخصی را داشته باشند و حداقل مقدار وابستگی بینشان ایجاد بشه.
برایه لایه بندی واقعی استفاده از WCF لازم است، ولی برایه یک مثال ساده یک لایه بندی منطقی به این مثال نگاه بندازید. https://barnamenevis.org/showth...137#post952137
در همین توپیک لینکهایه زیادی به پروژههایه مختلف فرستاده شده، ولی از زمانیکه این توپیک شروع شده بود تا الان روشهایه جدیدتری درآمدند که استفادهازشان زمان میبره و نمیشه در یک کتاب جمعشان کرد، بعضی از تکنیکها به اندازهای نوینند که هنوز کتابی درموردشان چاپ نشده.
برنامهنویسی لایهای بیشتر یک ایدهات تا یک روش بخصوص پیاده کردن، و بنا بر مختصات پروژه نحوه پیداه شدنش تغییر میکنه.
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
با سلام
در مورد مفاهيم برنامه نويسي چند لايه بايد اينطور بگم كه ما پدوژه اي رو كه روش كار ميكنيم به معمولا سه بخش تقسيم بندي ميكنيم UI(View),dataAccess,Business
تو UI تنها فرم هامون رو طراحي ميكنيم
تو dataAccess دستورات مربوط به ديتابيس رو مينويسيم
و تو Business رابط بين دو لايه بالا است
اين معماري به صورت 4 لايه 5 لايه نيز وجود داره كه تقسيم بندي رو با جزئيلت بيشتري انجام ميده.
در مورد مثال هم عرض كنم كه فعلا اين كار استاندارد خاصي نداره و معمولا سليقه اي انجام ميشه.
نقل قول: پیاده سازی معماری 3 لایه در سی شارپ
نقل قول:
نوشته شده توسط
Freydoonk
با سلام
در مورد مفاهيم برنامه نويسي چند لايه بايد اينطور بگم كه ما پدوژه اي رو كه روش كار ميكنيم به معمولا سه بخش تقسيم بندي ميكنيم UI(View),dataAccess,Business
تو UI تنها فرم هامون رو طراحي ميكنيم
تو dataAccess دستورات مربوط به ديتابيس رو مينويسيم
و تو Business رابط بين دو لايه بالا است
اين معماري به صورت 4 لايه 5 لايه نيز وجود داره كه تقسيم بندي رو با جزئيلت بيشتري انجام ميده.
در مورد مثال هم عرض كنم كه فعلا اين كار استاندارد خاصي نداره و معمولا سليقه اي انجام ميشه.
پیاده ریزیش ممکنه سلیقهای باشد ولی خصوصیاتی را که خودتان نام بردید باید داشته باشد، اینهم را باید اضافه کرد که :
GUI بر Business وابستگی دارد.
GUI بر Database نباید وابستگی داشته باشد.(نمیتواند مستقیم با داتابیس ارتباط برقرار کند، و در مورد داتابیس هیچ اطلاعاتی نباید داشته باشد).
Business بر Database وابستگی دارد.
Business بر GUI نباید وابستگی داشته باشد.
Database به Business و GUI نباید وابستگی داشته باشد.(به جز با اینکه کارهایه داتابیسی انجام بده هیچ اطلاعاتی در مورد بیزینس و یا گویی ندارد).
در مورد مثال هم عرض کنم، من یک مثال ساده برایه لایه بندی منطقی گذاشتم، حالا اگر روشی دیگر است که قابلیت حفظ داده و بازخاندنشان را داشته باشه و مقرارتی که در بالا نام برده شد را پیاده کند و به هر سلیقهای پیاده شده باشد را هر کی که بتونه بفرسته بررسی کنیم.