MVC Pattern Debates

This cluster revolves around debates on the definition, implementation, and criticisms of the MVC (Model-View-Controller) architectural pattern, including its separation of concerns, comparisons to frameworks like Rails and React, and historical origins.

📉 Falling 0.4x Web Development
3,550
Comments
20
Years Active
5
Top Authors
#4454
Topic ID

Activity Over Time

2007
21
2008
42
2009
92
2010
125
2011
271
2012
439
2013
378
2014
317
2015
243
2016
237
2017
117
2018
147
2019
136
2020
182
2021
158
2022
135
2023
267
2024
98
2025
144
2026
1

Keywords

MVCS US SeaSide mozilla.org UI MVP MVC ORM universitetetioslo.no UncommonWeb mvc controller pattern controllers views view separation model framework rails

Sample Comments

lmm Jun 2, 2023 View on HN

WTF? It's very different from MVC.

mpweiher Jul 6, 2022 View on HN

None of my articles points at issues with "regular MVC"

Khelavaster Jun 6, 2023 View on HN

This is the essence of MVC/MVP architecture!

bpizzi Aug 14, 2015 View on HN

Well, "things like react" are not more than the V in your MVC ;)

waynecochran May 9, 2015 View on HN

Doesn't this go against the MVC grain -- UI / model separation of concerns?

nsonha Jul 31, 2021 View on HN

Yes there is, model and view are dumb roles which makes controller do everything under the sun

wavephorm Jul 2, 2012 View on HN

MVC is just a design pattern, a way to organize code, it's not a religion.

gregwebs Nov 17, 2007 View on HN

Many people accept the MVC dogma as the word of god. In truth, it is a design trade-off just like anything else. You should really look at SeaSide or UncommonWeb. In SeaSide the view and controller are combined into a component in the way you describe as intuitive. In Rails best practice is to create partials (partial views) that can be re-used across views, put code into the model instead of the controller, and use before_filter to trigger re-usable functions.

perfmode Nov 9, 2016 View on HN

You're overfitting to your knowledge of MVC.

ricardobeat Aug 26, 2018 View on HN

You're gonna have to provide a bit more context for that. What part of the MVC pattern?