Задать вопрос

Выбор архитектуры для web-приложения

Создается прототип web-приложения. В качестве базы уже выбрана Neo4j. Теперь выбор за всем остальным (БЛ, интерфейс и т.д.). Возникла идея: реализовать приложение полностью на клиенте, AngularJS например, и общаться с СУБД по REST'у (например с помощью этого). Получаем довольно легкое и гибкое приложение, написанное по максимуму на одном языке и относительную непривязанность к базе.
Как думаете, что из этого может получится. Если у кого похожий опыт, может не с Neo4j, а например с CouchDB или еще чем?
  • Вопрос задан
  • 5682 просмотра
Подписаться 3 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 3
max_mara
@max_mara
Я бы на самом деле написал бы RESTful JSON API, вместо прямого общения с БД, по крайней мере больше возможностей для управления политиками доступа.

С CouchDB тоже такое можно провернуть и всю логику перенести прямо в БД, а общение у них там через HTTP-JSON.
Ответ написан
stepank
@stepank
Если вы пишете прототип (а это и указано в топике), то я бы рекомендовал не извращаться с технологиями, а взять то, что знаете лучше всего, и написать на этом как можно быстрее, чтобы понять узкие места приложения, в том числе с точки зрения бизнеса. Потом, когда прототип уже будет готов и будет больше понимания, что вы делаете и зачем, выкините весь или почти весь этот код, нормально продумаете архитектуру, выберете технологии и сделаете все по уму. Потому что в текущей ситуации больше похоже, что вам просто с модными технологиями поиграться хочется, это вовсе не плохо, но для прототипирования не лучший вариант.
Ответ написан
Комментировать
EugeneOZ
@EugeneOZ
ВСЁ на клиентской стороне не реализуете, но чем больше вынесете — тем лучше. В случае с AngularJS можно вообще отдавать HTML-страницы с сервера и потом уже заполнять их данными после ajax-запросов. Но напрямую с БД вообще без backend… Есть такое движение, No Backend!, но и там понимают, что полное избавление от backend недостижимо. Для примера подумайте про интеграцию с PayPal.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы