Solved

MVC benefits over n-tiers architecture

Posted on 2008-10-05
3
2,197 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 500 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 500 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

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

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

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.

816 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now