Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

projects in solution

I am wondering how divide large scale application into projects. Does I need to create:
1. one project for the data access layer.
2. one project for the business logic layer.
3. one project for the web application.
?

should I put the data access layer and the business login layer together?

in addition, does the data access layer should depend on the business login layer?

should the web application depend on the data access layer directly? (does is should use methods from the data access layer on work using objects from the business login layer)?

right now I have two projects:
1. web application.
2. all the code including data access and business objects.

like image 393
Naor Avatar asked Feb 12 '26 06:02

Naor


2 Answers

Download Microsoft Application Architecture Guide, 2nd Edition here, I'm now reading it and it is very helpful on the subject:

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ce40e4e1-9838-4c89-a197-a373b2a60df2

like image 53
Teoman Soygul Avatar answered Feb 14 '26 18:02

Teoman Soygul


I typically keep my projects seperate:

Solution
->Presentation Tier
->Business Tier
->Data Tier

I then add reference from Presentation to Business and Business to Data. I never let my Presentation interact directly from Data. Typically I also utilize services in my Business layer that can be deployed to separate location if necessary.

like image 45
Dustin Laine Avatar answered Feb 14 '26 19:02

Dustin Laine



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!