Yii — фреймворк для веб‑разработки на PHP
Yii — это популярный фреймворк для php‑разработки, основанный на парадигме MVC. Основное преимущество — очень высокая скорость работы и, как следствие, производительность.
Фреймворк активно развивается сообществом. Yii не выглядит «монстром» по сравнению с фреймворками Symfony и Zend Framework, кодовая база которых весьма объёмна. Фреймворк Yii достаточно прост в освоении и в использовании, что способствует быстрой разработке на нём проектов. Однако при выборе в качестве платформы для создания веб‑проекта этого фреймворка стоит всё равно учитывать тот факт, что скорость разработки на нём типовых решений всё равно будет ниже, чем разработка на CMS. Как и все фреймворки, Yii «заточен» под разработку технически сложных веб‑проектов: бизнес‑приложений, веб‑сервисов, а также сайтов со сложной бизнес‑логикой и требовательных к быстродействию.
Основные преимущества и возможности фреймворка Yii:
- Обеспечивает высокую производительность относительно других php‑фреймворков
- Основан на парадигме MVC (Модель-Представление-Контроллер)
- Есть интерфейсы DAO и ActiveRecord для работы с базами данных (используется PDO)
- Поддерживает интернационализацию
- Позволяет кешировать как страницы целиком, так и отдельные фрагменты
- Осуществляет перехват и обработка ошибок
- Имеет функционал работы с формами, обеспечивает их построение и валидацию
- Реализованы аутентификация и авторизация
- Удобен для реализации AJAX‑интерфейсов, интегрируется с jQuery
- В фреймворк встроены генераторы базового PHP‑кода для CRUD‑операций (скаффолдинг)
- Поддерживает темы оформления
- Имеет возможность подключения сторонних библиотек
- Работает с миграциями баз данных (генерация, применение и откат)
- Позволяет осуществлять автоматическое тестирование и вести разработку в стиле TDD
- Поддерживает стиль REST
До перехода на Ruby on Rails мы достаточно активно использовали Yii для разработки проектов. Этот фреймворк хорошо зарекомендовал себя в проектах с достаточно сложной бизнес‑логикой.
Тематические статьи
Symfony — фреймворк на PHP
Symfony — php‑фреймворк, на базе которого можно разрабатывать сложные веб‑приложения. У фреймворка Symfony весьма мощная функциональность, продуманная архитектура, а также развитое сообщество.
Рекомендации по выбору CMS и фреймворков
При выборе конкретной платформы для разработки часто возникают сложности. Бывает непросто принять взвешенное решение, в этом случае будет полезен следующий алгоритм выбора.
- При возможности найти готовые решения или продукты — используйте их. В большинстве случаев, оптимальная стратегия выбора: «чем проще — тем лучше».
- Если у вас есть команда разработчиков, то прислушайтесь к их мнению. Важны как возможности самой платформы, так и наличие у команды опыта работы именно с этим технологическим стеком.
- Заранее оцените «заточенность» выбранной платформы под ваши задачи. Не стоит на 100% доверять маркетинговым материалам вендора платформы.
Фреймворк Ruby on Rails
Rails — это прежде всего среда разработки, которая великолепно подходит для создания любого типа веб‑приложений: систем для управления веб‑сайтами и платформ для ведения электронной торговли, программ для организации совместной работы и для веб‑сервисов для осуществления коммуникации, для учетных и ERP‑систем, статистических и аналитических систем.
Язык программирования Ruby
Ruby (ruby — рубин, руби) — интерпретируемый мультипарадигмальный язык программирования: динамический, объектно‑ориентированный, рефлективный, императивный, функциональный. Активно используется в веб‑разработке, в системном администрировании и в работе операционных систем (Mac OS X, Linux, BSD).
.NET Framework и ASP.NET — платформы для веб‑разработки
.NET Framework — это программная платформа, выпущенная компанией Microsoft, которая подходит для разных языков программирования. ASP.NET — технология создания веб‑приложений и веб‑сервисов от компании Microsoft. Она является составной частью платформы Microsoft .NET и развитием более старой технологии Microsoft ASP.
Платформы для создания сайтов: CMS, фреймворки и SaaS‑решения
От выбора платформы для разработки зависит как сама по себе реализуемость необходимого функционала, так и возможности дальнейшего развития веб‑проекта. Для создания сайта, как правило, выбирается одна из платформ: CMS, фреймворк или SaaS‑решение.
SaaS‑платформы еще часто называют «конструкторами сайтов». Основное преимущество этого варианта — весьма хороший уровень качества за очень небольшие деньги.
Система управления сайтом (Content Management System) служит для разработки стандартных разновидностей сайтов. Много небольших и средних сайтов строится именно на CMS‑платформах, так как это наиболее целесообразный с экономической точки зрения подход.
Фреймворк — это программный продукт, который также как и CMS служит основой для сайта, но фреймворк в отличие от CMS — это более низкоуровневое решение, обладающее большей гибкостью и производительностью. Этот вид платформ используют почти все крупные веб‑проекты, а также подавляющее большинство веб‑приложений и веб‑сервисов.
Django — фреймворк на Python
Django — это программный каркас с богатыми возможностями, подходящий для разработки сложных сайтов и веб‑приложений, написанный на языке программирования Python.
Почему стоит выбрать Ruby on Rails для разработки веб‑приложения или сайта?
Разработку сложных веб‑проектов с использованием фреймворков на текущий момент экономически целесообразно вести на одном из следующих языков: PHP, Ruby, Python, Java, C#. Каждый из языков имеет далеко не по одному фреймворку, написанному на нём.
В этой статье мы не будем рассматривать преимущества языка программирования Ruby и фреймворка Ruby on Rails с технической стороны, а рассмотрим факторы, влияющие на выбор этой платформы с точки зрения бизнеса.
WordPress — система управления сайтами для блогов, СМИ и сообществ
Бесплатная CMS для создания блогов и сообществ, часто используется и для создания других видов сайтов, хотя для этого не предназначена. Не стоит создавать на WordPress что‑то кроме блогов, так как подобное решение будет не очень удобным в поддержке и сопровождении.