Frontend-бэкэнд-связь для мобильного приложения

Я довольно новичок в вещах, связанных с серверными и серверными службами, и я хочу разработать мобильное приложение с серверной частью. Я хочу, чтобы этот бэкэнд служил приложению ios, приложению android, а также веб-сайту. Сегодня меня беспокоит, как интерфейсная часть взаимодействует с бэкэндом:

  • работает ли он так же, как работает веб-сайт ? (Http-запрос на сервер ?)
  • как происходит обмен данными между фронтэнда и бэкэнда ?
  • какие общие решения моей проблемы ?
  • есть ли эффективный способ создания этого бэкэнда для обслуживания мобильных приложений, а также веб-сайта ?
  • разбор (https://parse.com/) хорошая отправная точка ?

спасибо

2 ответов


глядя на ваши вопросы, в свою очередь:

  • работает ли он так же, как работает веб-сайт ? (Http-запрос на сервер ?)

есть много вариантов, но, вероятно, наиболее распространенным или модным на данный момент является использование интерфейса RESTFUL: http://en.wikipedia.org/wiki/Representational_state_transfer

ранее веб-служба на основе SOAP могла быть наиболее распространенной выбор: http://en.wikipedia.org/wiki/SOAP

см. здесь для некоторого обсуждения о том, почему вы можете использовать REST, а не мыло сейчас: зачем использовать REST вместо SOAP-сервисов?

  • как происходит обмен данными между фронтэнда и бэкэнда ?

предполагая REST, HTTP используется для транспортировки сообщений, а данные приложения обычно включаются в XML или JSON формы

  • какие общие решения моей проблемы ?

Я думаю, что это охватывается другими частями вопроса / ответа.

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

Это очень зависит от вашего конкретного серверного приложения, особенно его размера и архитектуры. Если серверное приложение разбито на компоненты или части, а также на части, которые генерировать 'вид' или 'HTML' в страницы для веб-приложения различны и отдельно от серверной части сервера приложений, а приложения типа что их функции во многом совпадает ли конечный пользователь, используя веб-сайт или мобильное и это просто способ представления, полученные для различных устройств, что отличается, то эффективной будет та, которая хранит, как большая часть серверной часто, как возможно. Если использование приложения очень отличается при использовании мобильного клиента это может не иметь смысла. В более общем плане эффективный дизайн сохранит как можно больше функций, общих для мобильных и веб-приложений.

определенно стоило бы ознакомиться с архитектурным шаблоном "Model View Controller", поскольку большинство фреймворков на стороне сервера, а также многие фреймворки Javascript Web client и даже iOS и (в меньшей степени) фреймворки Android используют эти понятия:

http://en.wikipedia.org/wiki/Model - view-controller

одно важное соображение, нужно ли вам "нажать" или уведомление, как функциональность на вашем мобильном приложении. Если это так, вы можете посмотреть на некоторые из распространенных решений, чтобы понять, отвечают ли они вашим потребностям - вероятно, проще всего начать с предложений Apple и Google, чтобы получить понимание, но есть много других доступных решений также:

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html

http://developer.android.com/google/gcm/index.html

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


чтобы ответить на ваш вопрос

is parse (https://parse.com/) хорошая отправная точка ?