views:

2527

answers:

7

What are the alternative "design methods" to the Model View Controller? MVC seems to be popular (SO was built with it, I know that much) but is it the only method used?

+1  A: 

there are others, like Model-View-Presenter... get some details from here.

Vijesh VP
+12  A: 

There are many others:

jolson
+1  A: 

We use not so much an alternative but a hybrid called MVC-ARS.

dacracot
+1  A: 

MVC is part of a greater group of design patterns. I have no idea how much experience you have, so I'm not sure how to target this response. I'm a .NET programmer, but I found the Java book Head First Design Patterns extremely helpful. Design patterns are usually broken into groups with other patterns that help solve similar problems.

I also found the Data Object Factory website quite helpful as well. You should look around for some resources in your favorite language.

hectorsosajr
As an aside, I read the Head First book as a c# programmer, and the examples were easy enough to understand without Java experience.
Steve Duitsman
+7  A: 

One of the best write-ups of several different Interactive Application Architecture Patterns out there, is this very detailed and well-researched blog-post. It covers Model-View-Controller, three different flavors of Model-View-Presenter, several different flavors of Presentation-Abstraction-Control, Supervising Controller, Passive View and Hierarchical MVC.

Another interesting pattern is the Presenter First pattern by Atomic Objects. It's not just a Design Pattern, it's also a Process Pattern. IOW: the name "Presenter First" is not arbitrary, it actually describes a development process, in which the Presenter gets written first, driving the design of the rest of the system.

Jörg W Mittag
+1  A: 

MVC is an architectural pattern. These are the other Architectural patterns you can try (from Wikipedia):

  • Layers
  • Multi-tier Architecture
  • Presentation Abstraction Control (PAC)
  • Model View Presenter (MVP)
  • Model View ViewModel (MVVM)
  • Pipeline
  • Implicit Invocation
  • Blackboard System
  • Peer-to-Peer
  • Service Oriented Architecture (SOA)
  • Naked Objects

These are available here in Wikipedia.

Srinivasan A Paul Joseph