Как создать API-ориентированное приложение (точнее: для HMVC в CodeIgniter)

Предыстория:

Я работаю над веб-приложением, которое я планирую запустить в версиях для iPhone и Android в ближайшем будущем, и у меня есть несколько вопросы о разработке API для использования различными внешними интерфейсами.

Я начал с этого:

Я читал это руководство TutsPlus, в котором рассказывается о создании API-ориентированного веб-приложения, что означает, что все вызовы вашего браузера и вызовы приложений для смартфонов направляются через API.

Что меня особенно взволновало, так это утверждение в руководстве от Twitter:

Одним из наиболее важных архитектурных изменений является то, что Twitter.com теперь является клиентом нашего собственного API. Он извлекает данные из тех же конечных точек, что и мобильный сайт, наши приложения для iPhone, iPad, Android и все сторонние приложения.

Приведенное выше утверждение отражает то, что я хотел бы создать в идеале.

Then I Saw This:

Я нашел это руководство TutsPlus, в котором рассказывается о том, как создать REST API для CodeIgniter. Это было хорошо, потому что я разрабатываю свое приложение в CodeIgniter, используя плагин Modular Extensions — HMVC, и я подумал, что он идеально подойдет для моих целей.

Единственное, в чем я немного запутался, так это в том, как Фил Стерджен, похоже, предлагаетсоздать API.Он предлагает завершить все ваши модули внешнего кода, а затем создать API для каждого из модулей в соответствующих каталогах (не обязательно в таком порядке). Это было бы хорошо, если бы я не хотел, чтобы он был ориентирован на API.

И я хочу знать, как это сделать:

Как мне приступить к объединению обоих руководств:

  • API-ориентированное приложение, которое может использоваться как браузерным приложением, так и отдельными мобильными приложениями
  • REST API для CodeIgniter (с модулями HMVC)

Должен ли я:

  • Просто следовать руководству по API и пытаться адаптировать его к моим потребностям?
  • Следуйте руководству по CodeIgniter и воспользуйтесь советом Фила Стерджена о том, как реализовать его с помощью HVMC?
  • Сочетание того и другого?
  • Ни то, ни другое?
6
задан Community 23 May 2017 в 12:11
поделиться