<rmcreative>

RSS

Yii Framework

6 декабря 2008

Случайно встретился ещё один PHP-фреймворк. Обычно новые фреймворки я просматриваю мельком, но этот меня очень заинтересовал.

Авторы (Qiang Xue, Xiang Wei Zhuo), возможно, известны вам по довольно гибкому, но и довольно тормознутому фреймворку Prado.

Итак, что же в нём такого интересного?

Производительность

Если верить цифрам, он быстрее CodeIgniter, CakePHP, ZF и Symfony. А при использовании APC — не просто быстрее, а быстрее более, чем в два раза. Тут конечно стоит учесть, что сравниваются только самые базовые вещи.

Архитектура и возможности

— Полностью объектно-ориентированный без единой глобальной переменной или функции.

— Компонентный MVC.

— DAO, Active Record.

— Валидация форм.

— Аутентификация, авторизация.

— Генерация WSDL и всесторонняя поддержка веб-сервисов.

— Интернационализация, локализация.

— Многоуровневая система кэширования (данные, страницы, части страниц). Поддержка различных хранилищ кэша в виде бэкэндов.

— Много всего для предотвращения XSS, CSRF и других атак.

— Весь код на выходе — XHTML.

— Консольные генераторы скелетного кода.

— Позволяет использовать любой другой код (Zend Framework, PEAR и др.)

— На клиенте используется jQuery.

Заимствования идей

— Prado: Ну, тут понятно. Всё-таки авторы те же… Из него взяты идеи: компонентная структура, событийное программирование, слой абстракции СУБД, модульность, интернационализация, локализация и др.

— Ruby on Rails: Convention over configuration (можно начать работать, а конфигурировать как понадобится). Где-то в комментариях к документации народ отзывается, что разобраться проще, чем с Rails. Также на RoR похож Active Record.

— Symfony: фильтры, плагины.

— Joomla: Модули, перевод строк.

Документация

Документация конечно не такая простая и небольшая, как в CodeIgniter, но очень и очень хороша. На русском нет ничего, но с документацией на английском всё очень хорошо всё уже есть:

Документация по API

The Definitive Guide to Yii (122 страницы подробно и с примерами).

Оффлайн-варианты

Третьего числа состоялся релиз стабильной версии 1.0.0. Распространяется по new BSD (можно использовать как для открытых, так и для закрытых приложений).

Пробуем

Комментарии RSS

  1. №953
    aktuba
    aktuba 06 дек. 2008 г., 14:15:56

    Надо будет посмотреть... Спасибо.

  2. №954
    Vit228
    Vit228 06 дек. 2008 г., 22:03:36

    Скорость это гут, я уже задумывался над тем, что надо что то очень быстрое найти

    и использовать вместе с Симфони, в тех участках где нужна супер-скорость (например обработка AJAX Запросов)

    Но название конечно выбрали странное: "YII", как его произносить то? ;)

  3. №955
    Sam
    Sam 06 дек. 2008 г., 23:15:49

    Вроде как произносится как русское «И».

    Где нужна супер-скорость я бы использовал голый PHP… или вообще что-нибудь откомпилированное на сях.

  4. №957
    dkrnl
    dkrnl 08 дек. 2008 г., 6:28:13

    тоже на днях изучал этот фреймворк, создатели молодцы - не поленились docs и guide толковые написать.

    по скорости ясно почему он быстрее других - yiilite это просто большой файл с множеством классов - часть работы apс (:

  5. №967
    xoma
    xoma 12 дек. 2008 г., 0:19:52

    мой кратенький обзор можно прочитать тут http://andrey.opeykin.ru/yii-framework/....

    P.S. Ждем появления русского сообщества! Домен уже занят )))

  6. №1082
    Bethrezen
    Bethrezen 13 янв. 2009 г., 13:27:00

    Сайт русскоязычного сообщества начинает свою жизнь тут http://yii.devgroup.ru

  7. №1270
    Владимир
    Владимир 13 февр. 2009 г., 14:44:58

    На днях ознакомился с этим фреймворком.

    Есть свои преимущества по сравнению с CI, Kohana, CackePHP. Но!..

    Кривой скафолдинг - так и не получилось у меня ничего привязать к mysql - постоянно жаловался, что не задан primary key (хотя с sqlite работал нормально).

    И производительность тоже у меня вызвала сомнение:

    Во первых тестить фреймворки на hello world - глупо, все равно победит plain php. Во вторых без использования мемкеша, производительность практически не отличается. Может я конечно что-то недопонимаю, но на большинстве серверов используется php-cgi у которого нет доступа к shred memory.

  8. №1386
    Максим
    Максим 18 марта 2009 г., 14:20:25

    А тем временем вышла русская документация: http://www.yiiframework.com/doc/guide/ru/.

  9. №1387
    Sam
    Sam 18 марта 2009 г., 14:53:42

    Максим

    Она давно уже есть… и, если присмотреться, всё ещё в процессе перевода. Я иногда правлю там орфографию.

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.