|
|
|
|
|
by dreamfactory
4792 days ago
|
|
The trouble with reflecting your UI from your physical schema is that it is a horribly leaky abstraction with very close coupling. An extreme DWTF-style example I've seen was a 'CMS' in this style. The CMS was clearly modelled on phpMyAdmin - if you wanted to create a new content type, create a new table and it would be right there in the UI. In this CMS, news articles were the main content type - and they could be linked to other news articles and other content types in the system such as celebrities and events, which was implemented as a simple drop-down for each referenced item when you were adding or editing an article. However, this drop-down for selecting referenced entities was of course reused everywhere - meaning that you had a global setting on whether the items were ordered in alphabetical or most recent. (Obviously you could code around this particular case, but it illustrates a general problem with the approach. And god forbid you should ever want multiple pluggable storage engines or service-based data sources.) |
|