views:

99

answers:

5

Does the MVC framework, whether it be ASP.NET or Rails enforce you to develop better databases?

Since your database tables and fields will most likely map to classes and properties using OR/M, it only makes sense that this would force you to create a proper database structure from the beginning of development.

A: 

You underestimate the ability of people if you think any set of rules can successfully force someone to perform better.

Spencer Ruport
Not what I meant. What I mean is that if you create a database with a bunch of tables and fields and then use LINQ to SQL for the OR/M, wouldn't the design of your database tables and fields have a positive/negative result on your classes and properties depending on how you developed the database from the beginning.
Xaisoft
or is it *overestimate*?
p.campbell
Well, if anything those additional tools and technologies increase the number of possible design flaws.
Spencer Ruport
It did seem a little confusing.
Xaisoft
Spencer, that is what I mean, so doesn't it force you to improve your database design.
Xaisoft
A: 

MVC framework is very much a "Model" centric architecture and it only allows you ti interact with your database in an efficient way, id does not force you to design a database in a particular way

Rony
I agree, but it does seem like in order for you to really get the full benefits of MVC, you need to have a sound database design.
Xaisoft
A: 

Physical data layer may be different (and usually is) from the entity model that's usually used by EF/NHib/likes.

But whenever you do any kind of abstraction of your data model to your code you do tend to change certain parts. These adaptations relate to flexibility of your OR/M. The more flexible it is less adaptations there will be.

Robert Koritnik
A: 

I don't think it does.

MVC does not have anything to do with the database design, it is more towards proper architecture.

But it may indirectly improve the database design by introducing the use of model or domain driven design.

Ikhwan
A: 

As it's entirely possible to create an application using the MVC pattern that doesn't use a database at all, then the answer is no. I don't think the original implementation of MVC in Smalltalk-80 (as in 1980) was RDBMS-backed.

John Topley