Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Yii2 - на пути от Alpha до GA. Взгляд с практич...
Search
fwdays
November 18, 2014
Programming
0
1.7k
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
November 18, 2014
Tweet
Share
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
2k
Beyond Testing Михаил Боднарчук
fwdays
0
720
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
910
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.7k
Phalcon. Что нового? Александр Торош
fwdays
0
1k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.3k
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
0
720
Функциональный тулчейн Nix
fwdays
1
430
N2O самый мощный Erlang Web Framework
fwdays
0
4.3k
Other Decks in Programming
See All in Programming
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
260
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
350
テストコード文化を0から作り、変化し続けた組織
kazatohiei
2
1.5k
DevFest Tokyo 2025 - Flutter のアプリアーキテクチャ現在地点
wasabeef
5
900
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
750
快速入門可觀測性
blueswen
0
350
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
130
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
テストケースの名前はどうつけるべきか?
orgachem
PRO
0
130
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
330
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
200
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
3
350
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Become a Pro
speakerdeck
PRO
26
5k
Embracing the Ebb and Flow
colly
84
4.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building Applications with DynamoDB
mza
91
6.1k
Designing for humans not robots
tammielis
250
25k
It's Worth the Effort
3n
183
28k
Transcript
Yii2 - на пути от Alpha до GA. Практический взгляд
Александр Бордун EuroMD Ltd.
[email protected]
@yiiframework_ua @borales @yiiframework-ua @borales
Небольшая история Yii 2.0 Релиз – 12 октября 2014 •
~3.5 года с момента первого коммита • >10k коммитов за это время • >300 авторов
None
Сравнение версий Yii 1.1 vs. 2.0
Переход с Yii 1.1 на 2.0 • php >=5.4.0 •
Пространства имён (по умолчанию) • Анонимные функции, SPL, trait • Позднее статическое связывание • Datetime, intl • Composer (опционально)
Config (config/main.php)
Controller (controllers/SiteController.php)
View (views/site/index.php)
register(js|css|metaTag)
Widget
Event (v1.1)
Event (v2.0)
Alias
Нововведения в Yii 2.0
«Из коробки» • Набор официальных расширений • DI Container, Service
Locator • AssetBundle (+ конвертер) • REST API framework, Twitter Bootstrap • Инструменты отладки (Yii2-Debug)
AssetBundle (config)
AssetBundle (register)
REST API (подготовка)
REST API (запрос)
Yii2-Debug Module Yii 1.1 module backport github.com/zhuravljov/yii2-debug
Вывод ошибок и исключений
Request / Response
Конфигурация DB
ActiveRecord (find)
ActiveRecord (relations)
RBAC
Security Helper
Сообщество, документация • Переводы сообщений фреймворка сделаны на ~40 языков
• Переводы руководства в процессе перевода на >10 языков • Larry Ullman (технический писатель) помогает работать над руководством
EuroMD и Yii 2.0 • Старт работы над проектом –
январь’14 • Стадия разработки Yii 2.0 – Alpha • Хотелось чего-то нового…
Опыт проекта EuroMD с Yii 2.0
Traits / ActiveQuery / Scopes (init)
Traits / ActiveQuery / Scopes (use)
Composer Asset Plugin (beta4) • Добавление пакетов от NPM/Bower •
Не требует установленных NPM/Bower • Решил проблему с обновлением нескольких менеджеров зависимостей • Добавил новую – долгое время обновления пакетов
HTML helper (свой)
ActiveForm / ActiveField (свои) • Корректировка повторяемой верстки • Расширили
классы ActiveForm и ActiveField для свои виджетов
Небольшие шишки • В EuroMD используется Advanced Template структуры папок,
при этом – все конфиги внесены в репозиторий • В процессе развития фреймворка ActiveForm js callbacks – были перенесены на events
Текущее состояние Yii 2.0 • Готов к “production” использованию •
Готовится обновление оф. сайта (в том числе визуальное обновление разделов документации и API) Milestone Yii 2.0.1 на 7 декабря
Рекомендации • github.com/iJackUA/awesome-yii • stdout.in/ru/cat/coding • github.com/vova07/yii2-start • github.com/samdark/yii2-cookbook •
github.com/kartik-v/* • yiiframework.com.ua yiiframework.ru
Вопросы?