Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4545700
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 21, 20262026-05-21T15:51:00+00:00 2026-05-21T15:51:00+00:00

Both OOD (Object-Oriented-Design) and MVC (Model-View-Controller) architectures have become staples of modern software design.

  • 0

Both OOD (Object-Oriented-Design) and MVC (Model-View-Controller) architectures have become staples of modern software design. Yet, I have recently had an interesting discussion regarding how MVC architectures utilize (and possilby even violate) OOD principles. This possibility is actually rather intriguing since both OOD and MVC are intended to achieve many of the same goals: separation-of-concerns and software re-usability. But the question I pose: Are these two design strategies in direct conflict with each-other? As I have used both, in practice, I am beginning to think: quite possibly yes.

I say so because: Enforcing a strict separate between models, views and controllers often results in architectures where models are implemented as dumb containers that can only be manipulated via external controllers. I argue this directly conflicts one of the chief principles of object-oriented design: where objects contain operations that perform necessary operations and encapsulate them as necessary. For example, in a pure Object-Oriented architecture a hypothetical File class would contain methods such as open() and save(). MVC suggests that we have two classes File and FileManager (such that the later contains the open() and save() methods). To me: the MVC design is rather messy. If ones needs to create a more specialized type of File (say for handling Files that stream across a network on open() or save()), one only needs to sub-class File with a class called (let’s say): StreamedFile. With MVC, you’d have to either create another manager class or complicate the design of the original manager class.

From this, it follows that in a more complex system MVC could have disastrous effects on both separation of concerns and code re-usability. Or Not? Perhaps MVC patterns could be implemented without breaking OOD principles? Or Is MVC an inherently flawed approach that makes it difficult to implement software systems with loosely coupled components?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-21T15:51:00+00:00Added an answer on May 21, 2026 at 3:51 pm

    On the contrary, healthy MVC use should encourage skinny controllers and fat models, so that the models (the objects) is where the action happens (which itself encourages encapsulation and other good OOP principles), and the controllers are merely there to point certain requests in the right direction to the objects.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Object-oriented design (OOD) combines data and its methods. This, as far as I can
Both are mathematical values, however the float does have more precision. Is that the
Both the systems described are Windows XP with Lotus Notes 8.5. I have a
Both offer policies which have to be enforced and are similar in operation. There
Both functions disp and display do not have return parameters and display variable content
Both the web files and the database have been tampered pointing to malicious JavaScript.
Both the jQuery and Prototpye JavaScript libraries refuse to allow me to use a
Both DataSource and DataSourceID are defined on 'grdCommunication'. Remove one definition. I just got
Both of them are mbeans. Both are intended to setup Hibernate Session Factory and
Both Session.Clear() and Session.Abandon() get rid of session variables. As I understand it, Abandon()

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.