Правильно ли я делаю выбор, выбирая Yii в качестве своего PHP-фреймворка?[закрыто]

StackOverflow https://stackoverflow.com/questions/1523570

  •  19-09-2019
  •  | 
  •  

Вопрос

Я собираюсь начать разработку нового веб-сайта и занимаюсь исследованиями фреймворков PHP.Я не продвинутый разработчик PHP, но я занимаюсь разработкой веб-сайтов и приложений (в asp.net) уже несколько лет.

Мой веб-сайт в основном будет основан на AJAX (с использованием jQuery) и будет выполнять множество вызовов веб-служб.После некоторых исследований вот к чему я пришел:

КакеФФП:Изначально начинал разрабатывать в этом направлении, но счел это слишком сложным.Тот факт, что это заставляет вас использовать и изучать все эти новые вещи только для того, чтобы ими пользоваться, был немного пугающим, поэтому я пока отложил это в сторону.

Зенд:Производительность фреймворка вызывает у меня некоторый скептицизм, но я слышал, что он отлично поддерживает создание веб-сервисов.Я также слышал, что это было немного сложно.

CodeIgniter - инициализатор кода:Нет реальной причины для того, чтобы не использовать это приложение.Основываясь на том, что я прочитал, CodeIgniter и Yii очень похожи, но Yii немного быстрее и не содержит ненужного кода для PHP4 (поскольку я планирую разрабатывать исключительно на PHP5).

Что касается Yii, единственное, что меня в нем пугает, это то, что он новее других фреймворков, поэтому у него меньшее сообщество.Также, похоже, у него нет тонны поддержки веб-сервисов (только SOAP, насколько я понимаю), в отличие от Zend.

Итак, мои вопросы сводятся к следующему:

  1. Должны ли эти вещи меня беспокоить?(не такое большое сообщество, плохая поддержка веб-сервисов)
  2. Есть ли что-нибудь еще, на что мне следует обратить внимание?
  3. Подходит ли мой выбор Yii по сравнению с другими фреймворками для веб-приложения, основанного преимущественно на AJAX?

Бара

Это было полезно?

Решение

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

Проведение вашей due diligence окупится не только для вас, но и для вашего клиента, который оплачивает счета.

Подводя итог:

  1. Определите необходимые компоненты сайта.
  2. Исследуйте фреймворки и определите соответствие вашим требованиям.
  3. Поэкспериментируйте и узнайте, какие из них лучше всего подходят для этой работы.

Редактирование / Дополнения Мнений:

Если это просто проект по личностному росту, то я бы рассмотрел возможность использования того, что будет лучше всего смотреться в вашем резюме.У Zend самое громкое имя и солидный продукт, поэтому они выигрывают по умолчанию, потому что это старый аргумент "меня не могут уволить из-за IBM". Некоторые крупные игроки используют Symphony, но это требует длительного обучения.Yii, Cake, Kohana - у всех есть плюсы и минусы, и они по-своему великолепны.

Другие советы

Раньше я был разработчиком Symfony, CakePHP, Zend framework, Kohana и Code Igniter, но около года назад я открыл для себя Yii. Мое первое (а также второе и третье) впечатление было превосходным:

  • Легко обучаема
  • Легко реализовать
  • Простота использования и расширения
  • Очень, очень, очень быстро
  • Поддержка многих языков
  • Поддержка множества программ, серверов и ускорителей.
  • Поддержка MySQL, PostgreSQL, SQLite и Oracle...Поддержка Firebird находится в стадии бета-тестирования.
  • Многие другие функции, которые я сейчас не помню.

Загрузите его, используйте и реализуйте с его помощью свой проект...вы будете поражены.

Теперь я задаю ваши вопросы:

  1. Должны ли эти вещи беспокоить меня?Сообщество не такое маленькое, как кажется. В настоящее время у Yii есть активное сообщество.Нас не мало.
  2. Есть ли что-нибудь еще, на что мне следует обратить внимание?Вы должны посмотреть свои потребности:База данных, которую вы будете использовать, веб-сервер и другие, как сказал Рэнди.
  3. Подходит ли мой выбор Yii по сравнению с другими платформами для веб-приложения, основанного преимущественно на AJAX?Да, это.

Как главный разработчик Yii, возможно, я не совсем честен (но хочу!), однако для объективности должен упомянуть, что раньше я пробовал и Zend, и CodeIgniter.

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

С другой стороны, Yii по-прежнему поддерживает широкий спектр практических и реальных решений.Это несколько субъективно, но если вы посмотрите на эти часто используемые классы, вы обнаружите их силу в реальных задачах.

Документация (особенно API) серьезно настроена и очень похожа на спецификации, что может показаться вам странным и холодным в первые часы, но в долгосрочной перспективе это определенно облегчит вашу работу (в отличие от тех модных документальных приятелей, которые люблю подружиться в сигнатурах методов).

Все это способствует увеличению времени разработки.Люди способны создавать серьезные приложения за несколько недель!

За полтора года использования Yii у меня было около 15 сайтов в сети, все они работали безупречно и быстро, а с помощью Yii их создавать было очень легко.И большинство сайтов не тривиальны, это большие реальные сайты.Могу предоставить ссылки, если попросят.

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

Практически каждый современный веб-фреймворк имеет отличную поддержку XHR/Ajax.На самом деле все сводится к вашим личным предпочтениям, основанным на ваших текущих знаниях языка, и какой фреймворк вам понравится больше всего.

Я бы также посоветовал Kohana, поскольку она довольно стабильна, зрела и имеет отличную поддержку.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top