Отображения между моделями данных в n-уровневых системах! - PullRequest
4 голосов
/ 07 августа 2010

Приветствия переполнения,

Я действительно много думал об этой теме

Вот типичные отображения:

Модель БД отношений <> Модель OO сервера <>Сериализованная модель <> Client OO Model

<> означает двунаправленное отображение

В настоящее время я использую Java для своего бэкэнда и ExtJS (библиотека JavaScript) для моего внешнего интерфейса.Имеет смысл сериализовать в / из объектов Java и JSON.Какова ваша рекомендуемая библиотека сериализации JSON?почему?

Как насчет вашей рекомендации на стороне БД?Я действительно ненавижу издержки и сложность реляционных OO-отображений.Мне нравится поддержка objectdb для чистого JPA2, но это дорого.К сожалению, кажется, что это единственный OO db, который изначально поддерживает JPA2.Что вы думаете об этом, особенно когда речь идет о чистоте и производительности API?

Как вы управляете своими хранилищами данных, используя реляционные БД?Вы, например, используете классы-обертки для упаковки наборов данных?или напрямую манипулировать наборами данных без сопоставления с объектами?Вы напрямую связываетесь с JSON, например, из этих наборов данных?

Что-нибудь для сжатия / шифрования сериализованных данных перед отправкой?и как повернуть его обратно с помощью JavaScript?

Я действительно ищу чистый и быстрый стек API для своей работы

Заранее спасибо!

1 Ответ

0 голосов
/ 05 февраля 2011

Вы привержены использованию Java на сервере? Если нет, то node.js с базой данных MongoDb может устранить пару ссылок в цепочке, потому что Mongo позволяет вам хранить документы JSON, а ваше серверное приложение написано на Javascript. поэтому все один язык, все одно представление данных и node.js + mongo обеспечивают, как сообщается, удивительную производительность и масштабируемость. Вы также исключаете SQL, работая с данными БД непосредственно как объекты Javascript. Вы также не определяете схему БД - вы храните документы JSON.

Я лично перенес всю свою личную разработку на стороне сервера в node.js и mongo именно по этим причинам. Гораздо проще, возможно, быстрее и легче масштабируется.

Вы также можете использовать один и тот же язык во всем стеке, и Javascript является более выразительным языком, чем Java, по своим возможностям рефакторинга.

...