Моделирование всегда приводит к упрощению, но нам всегда важно сохранить ключевые моменты моделируемых объектов и событий. Что же чаще всего теряется при отображении в реляционную, объектную и иерархическую модели? Приведу только краткий обзор, а Вы уже сможете для себя оценить, насколько важна потерянная семантика в Вашем случае для решения прикладных задач. Потерянная "сила" и другие атрибуты связей. Как в реляционных СУБД, так и в языках программирования, понятие ссылки сводится к идентификации и не позволяет добавлять дополнительные атрибуты связей. Однако, на практике часто бывает полезно учитывать силу, давность или стойкость связи между объектами. Атрибуты связей можно разделить на параметры и классифицирующие атрибуты связей, но и те и другие очень просто моделируются средствами реляционных СУБД, декларативными языками описания как XML, JSON, CLEAR, или активными языками программирования. Главное, не забыть, о том, что ссылки не равносильны, структурно сложны и не ...
http://habrahabr.ru/blogs/webdev/117791/
ОтветитьУдалитьИнтересная статья - я примерно к такому же выводу по организации приложения пришёл: MVC в базе, "тонкий" сервер приложений со своим MVC и клиент - со своим, при этом модель транслируется по звеньям в клиент (вид старшего уровня -> модель младшего), а контроллер, соответственно, - поднимает уровень исполнения по уровням, на каждом сверяясь с моделью на предмет возможности модификации, разгружая таким образом канал и базу.
А вот чему никто не уделяет внимания и не пишут статьи в контексте парадигмы MVC - это реализация привилегий доступа (или я пока не откопал). Имхо - это ещё одна прослойка между контроллером и моделью, поскольку модели в целом не интересно, кто дёргает за action'ы, а контроллеров таки может быть несколько разных (например, в сторону браузера и в сторону веб-сервиса).
А как Вы оцениваете этот вопрос?
Ну, он же сказал: "не буду вступать в дискуссии, объяснять..."
ОтветитьУдалитьСтатья колоссально помогает мозгу думать. Куча полезных и правильных мыслей. Скоро оформятся в другую статью.