PHP Web Design: использование каналов Smarty vs Rest с помощью jQuery - PullRequest
1 голос
/ 13 октября 2010

Сегодня вечером я тралял ТАК пару часов в поисках ответов, но я не нашел ничего, что действительно отвечало бы на мои вопросы.Приношу свои извинения, если на самом деле уже получен ответ.

Я разрабатываю новый веб-сайт и пытаюсь выбрать архитектуру, которая будет использоваться для обслуживания контента.В прошлом мои веб-сайты использовали PHP, подающий данные в шаблоны Smarty.

Однако недавно на моей работе я работал над веб-приложением на Java, где jQuery использовался для извлечения данных из RESTful API.(который возвратил JSON), где страницы шаблона HTML использовались в качестве основы, а javascript использовался (используя jQuery) для заполнения контента.

Мой вопрос:

Сайт, который я разрабатываюбудет на PHP, но было бы лучше создать (или использовать существующий) RESTful API или продолжить, как я делал до подачи данных в шаблоны Smarty?

Есть ли реальные преимущества для одного илидругой, или это просто сводится к предпочтениям / опыту разработчика?

Если это поможет, веб-сайт будет для церкви, где типы контента будут CMS-подобными;новости / объявления, вики-подобные страницы и ограниченный тип социальных сетей (для министра, чтобы общаться с прихожанами).

1 Ответ

1 голос
/ 13 октября 2010

Краткий ответ: Похоже, заполнение контента JavaScript не будет полезным в вашем случае.Загрузка данных с помощью JavaScript добавляет уровень сложности с минимальной выгодой или без нее (в вашем случае).Посмотрите на CMS и веб-сайты, которые имеют схожую функциональность с тем, что вы делаете.WordPress, Drupal и т. Д.

Например, когда может быть полезно загрузить данные с помощью JavaScript, ознакомьтесь с разделом тегов на этом сайте.При поиске тега он запрашивает сервер без перезагрузки страницы.Однако первоначальный список тегов загружается во время начальной загрузки страницы без JS.

Вот несколько случаев, когда вам может пригодиться загрузка информации с помощью JS:

  • Есть некоторые данныеэто займет больше времени, чтобы загрузить.Например, вы получаете данные из веб-службы.Используя традиционный метод, вам понадобятся все данные, необходимые для того, чтобы страница была доступна, прежде чем ее можно будет отобразить.Если вы загрузите эти данные с помощью JavaScript, страница может загрузиться, и медленные данные появятся, когда она вернется.Реально, вы, вероятно, просто кэшируете данные, но это всего лишь пример.
  • Вы будете получать больше данных, пока пользователь остается на странице.Возможно, вы захотите обновить страницу без обновления.
  • Вы хотите, чтобы пользователь мог запрашивать больше данных без обновления страницы.
  • У ваших пользователей ограниченная пропускная способность (мобильная связь).
  • На этом сайте есть больше рекомендаций: http://www.oracle.com/technetwork/articles/javase/index-137171.html
...