?
Solved

MVC benefits over n-tiers architecture

Posted on 2008-10-05
3
Medium Priority
?
2,254 Views
Last Modified: 2013-11-08
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
Comment
Question by:jabcoco
  • 2
3 Comments
 
LVL 19

Accepted Solution

by:
elimesika earned 2000 total points
ID: 22646165
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
 
LVL 10

Author Comment

by:jabcoco
ID: 22646399
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
 
LVL 19

Assisted Solution

by:elimesika
elimesika earned 2000 total points
ID: 22647738
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

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
Simulator games are perfect for generating sample realistic data streams, especially for learning data analysis. It is even useful for demoing offerings such as Azure stream analytics, PowerBI etc.
In a question here at Experts Exchange (https://www.experts-exchange.com/questions/29062564/Adobe-acrobat-reader-DC.html), a member asked how to create a signature in Adobe Acrobat Reader DC (the free Reader product, not the paid, full Acrobat produ…
How can you see what you are working on when you want to see it while you to save a copy? Add a "Save As" icon to the Quick Access Toolbar, or QAT. That way, when you save a copy of a query, form, report, or other object you are modifying, you…
Suggested Courses
Course of the Month12 days, 21 hours left to enroll

578 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question