Hacker News new | past | comments | ask | show | jobs | submit login

I know it’s probably obvious to some but in an MVC framework: the API can be the view.

That’s the whole point of separating the code into layers: so you can have multiple implementations existing concurrently at the same layer.

For example you can have models talking to Postgres and models taking to Elasticsearch or Cassandra. Or as everyone knows you can have different controllers which all talk to the same models or use the same view for output.

And if you were to abstract beyond the framework level, MVC can apply to software written in totally different languages.

I consider my code to be high level MVC and it’s controllers in Elixir talking to Java model layers and outputting JSON views, HTML, or even Excel files.




IMHO, the primary value of any framework (from an organization / product lifetime perspective) is two-fold.

#1 - Organize and implement in a manner that adheres to some standards, so someone can always be found to maintain and fix it.

#2 - Create some interfaces that break components apart.

What standards and what interfaces (and how many) are an order of magnitude less important than that they exist at all.


Don't forget: #0 - Speed/Developer productivity

Not only when writing actual code, but there's less bike shedding and "fundamental" discussions.


This is what I was thinking. Got Tornado plus a load of home grown code at my work. Compared to Django it's just so slow to develop on. There are so many well tested, documented features in Django, while we have some half arsed buggy implementation doing a poorer job.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: