@Astros

Как выбрать структуру, язык и фреймворк для приложения?

Здравствуйте!
Нужен совет по выбору языка и фреймворка для того, чтобы переписать существующее web-приложение.
Итак, дано:
1. Клиент ( реализован на JS + Bootstrap ) - основная задача - внесение данных в БД, их анализ (сейчас все выполняется клиентом в браузере на компьютере или планшете), работа с календарем (планирование), сбор статистики.
2. Сервер ( реализация на Python 2.7/ Flask ) - хранение БД, авторизация и доступ к данным клиентов.
Вся работа происходит через веб-сайт с использованием браузера клиента и, в случае проблем с интернетом, работа заканчивается. Такого еще не было, но учитывать такой вариант стоит. Насколько я понимаю, такая концепция реализации сходна с SaaS.

Цель - переписать заново, грамотно и для предоставления на коммерческой основе.
Вижу такие варианта:
- всю логику и бд убирать на веб-сервер, оставляя клиенту возможность работы только через интернет посредством браузера или отдельно написанных программ под Windows/Androis/iOS;
- создавать такой же локальный сервер, которому безразлично наличие интернета, поскольку все клиенты будут находиться в одной сети;
- писать полноценное приложение для клиента, создав возможность синхронизации данных из БД через сервер. Опять же, где размещать серверное приложение, локально или в Интернет? В некоторых случаях у сервера будет всего один пользователь и все данных можно хранить локально на одном компьютере, но минус данного способа в том, что вся информация будет доступна только на этом пк, а было бы неплохо иметь досту к статистике и некоторым данных через личный телефон/планшет.

От выбора схемы работы зависит способ продажи приложения: либо ежемесячная плата за пользование, либо разовая оплата с последующими апдейтами.

Сам склоняюсь к первому варианту, поскольку его проще поддерживать и продавать, но что делать клиенту в случае проблем с интернетом? С одной стороны ни у кого пока такого не было да и всегда можно воспользоваться мобильным интернетом, в случае проблем со "стационарным". Но опять же, отказ главного веб-сервера приведет к остановке работы всех клиентов.

После выбора схемы работы потребуется определиться на чем писать, какой язык и фреймворк использовать, каких программистов нанимать.

Сам не айтишник, не знаю что сейчас лучше и перспективнее выбрать. Надеюсь на ваши советы!
  • Вопрос задан
  • 228 просмотров
Пригласить эксперта
Ответы на вопрос 3
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Веб-разработка
Сам не айтишник, не знаю что сейчас лучше и перспективнее выбрать. Надеюсь на ваши советы!
Совет — выберите cначала айтишника, дальше он сам всё сделает.
Ответ написан
@SergeyZelensky-Rostov
Вы не айтишник не берите на себя задачу айтишника, в данном вопросе вы должны выступать как заказчик, вам нужно реализовать сервис, для коммерческого предоставления услуг, вам необходимо чтобы клиенты имели доступ по сети, и могли пользоваться локально, при отсутствии соединения с сетью, вы хотите оптимизировать данное решение так, чтобы снизить стоимость оборудования. вариант храним все на своем сервере -да это Sass
+ для вас:
1.абонентская плата - может зависеть от количества пользователей
2.новые обновления делаются безболезненно нет желающих убить вас клиентов которым на их сервак пришли обнова и раз**нила все к чертям.
- для вас:
1. Работники в штате, как минимум админ сервера и техподдержка
2. Атаки на сервер (конкуренты например)
3.Аренда или покупка как минимум 1 сервера

Во-втором варианте для вас из плюсов то что все на железе (вы не заморачиваетесь с поддержкой своего сервера) клиента если его будут атаковать вы ответственности не несете, но по факту у вас единоразовый платеж от клиента и платная обнова на которую скупой клиент скорее всего забьет.
Выбор сделать не легко,надо учитывать на сколько финансово вы можете вложиться, приложение-клиент на мобилки и десктоп стоят отдельных денег, разработка веб-интерфейса и бэкенд тоже отдельно, поэтому изначально посчитайте выгодна ли вам в конечном итоге эта затея
Ответ написан
sim3x
@sim3x
django + django rest + angularjs
Ответ написан
Ваш ответ на вопрос

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

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