Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2258
  • Last Modified:

MVC benefits over n-tiers architecture

Hi Experts!!

I'm just starting a new web application and somebody told me to use the ASP.net MVC.
After few search over the internet I can't find any benefits over using the MVC instead of a n-tiers architectures (presentation, property, business, db).

Should I use the MVC framework/pattern .. or continue the development process using a standard n-tiers architecture?

I've read those article
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=891283&SiteID=1
http://msdn.microsoft.com/en-us/magazine/cc337884.aspx

Thanks!
0
jabcoco
Asked:
jabcoco
  • 2
2 Solutions
 
elimesikaCommented:
HI

n-tier is an architecture that helps you to develop distributed applications, the main advantage of using that is scalability.

The MVC is a design pattern, it helps you implement n-tier  architecture in a way that insures that tiers are not tightly coupled.

What MVC says is that only your controller (Business Logic) should access the Model (generally DB) while the view access data using the Controller API without being aware to the source of the data. That implies that a change in the database will affect the Controller but not the View (GUI) since the interface between the Controller and the View should not change.

So, those terms a complete each other and are not contradictory.


0
 
jabcocoAuthor Commented:
Ok, so basically their is no really needs to implement the MVC in therm of performance even if we plan to have thousand of simultaneous users on our webapp.
0
 
elimesikaCommented:
HI

Again, you will want to implement the MVC design pattern in order to get a well n-tier application. It worths the effort since each change in the life-cycle of your application is remarkably more simple when you use patterns.

When using asp.net

You asp page is the view
You should have a set of DLLs that implement your application logic, you can wrap the BL functionality as a set of WCF services if you want, that will give you location transparency (you can run your services on separate machines) and scalability.
You should have a Data Access Layer  library that handles your model , you can use MS Enterprise library to auto generate code that handles your data for you , or you can use LINQ , in that case you should have to write the DAL by yourself.

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now