Здравствуйте, The_Thing, Вы писали:
T_T>Задача.
T_T>Требуется реализовать определённую логику, которая управляет определёнными данными. К этим данным также, должен быть доступ как через web — сайт, так и через клиентское приложение.
T_T>Данные хранятся в БД.
Решение.
Надо брать определенную БД, логику писать на определенной платформе (различной для Винды и кросплатформе). А, ну да, данные определенно хранить в БД.
Намек понятен?
T_T>Прошу рассмотреть варианты, если платформа Windows и если код кроссплатформенный.
Странное желание. Даласть вам эта кросплатформенность. Если проект не домашняя поделка, то к выбору платформы нужно отнестись серьезно.
T_T>Вижу следующее решение. На сервере работает сервис реализующий логику и поднят web-сервер для сайта ( пока предполагаю ASP.NET — IIS).
T_T>Вопрос, как и какую использовать БД (совсем мало о них знаю).
Уверен, что для тебя все равно.
T_T>Под как я имею ввиду следующее:
T_T>1. Предоставлять ли клиентскому приложению доступ непосредственно к БД, там же есть своя политика, права и ограничения.
T_T>2. Предоставлять доступ к БД исключительно через сервис. Запрещая прямой доступ к БД.
Это завист от многих факторов: можно ли доверять клиентам, нужна ли дополнительная логика при обращению к данным, будут ли посторонние приложения пользоваться данными... я хз что там еще, но уверен факторов масса.
При прочих равных дополнительный Слой (Tier) == дополнительный геморой.
T_T>- Плюсы первого в том, что не придётся решать проблему многопользовательского доступа — она уже решена. Клиент работает непосредственно с БД. Минусы, не получится абстрагироваться от БД и при малейшем изменении придётся менять и клиентское приложение.
T_T>- Плюсы второго, проще подобрать кроссплатформенную БД. Минусы — реализация усложняется проблемой многопользовательского доступа.
Бред написан. С многопользовательским доступом в обоих вариантах отлично. В обоих случаях "не получитсья абстрагироваться от источника данных" (или ты решил, что при добавлении новой колонки в таблицу тебе ее в сервис добавлять не нужно будет?) (в бд от данных отлично абстрагирутся с помощью вьюшек и сторэд процедур).
T_T>Всё же, я склоняюсь ко второму, хотя бы для того, что бы поднять скилзы в области многопользовательских систем.
Все твои скилзы будут такими: используем сервер XYZ ---> в рамках одного запроса система однопользовательская.
СУВ,
Aikin... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>