Symfony Meetup Kansai #1
自己紹介
- 足立智広@株式会社イーシーキューブ勤務
- EC-CUBEエバンジェリスト
- EC-CUBEの2/3/4の開発してきました
- ふだんは定時退社で子どものお迎えしてます
- twitter: @chihiro_adachi
EC-CUBEのバージョン
- EC-CUBE 2.13.x
- EC-CUBE 3.0.x(Silex)
- EC-CUBE 4.0.x(Symfony)
EC-CUBE3の話をします
- PHPカンファレンス2015東京
2017年10月ごろ
- EC-CUBE「3.1」の開発が始まる
- EC-CUBE3.0でカスタマイズしづらかったところ、難しかったところを中心に改善
- もともとは互換性をある程度保持して、改善で留める予定でした
Silex EOL問題
EOL of #Silex is expected to be June 2018. #SymfonyCon #Symfony
— null (@Ocramius) 2017年11月16日
12月〜2月くらいでSymfonyへの移植
きがついたらsilexからsymfonyへの移植が完了してましたhttps://t.co/jIE5Y4szR0#eccube#symfony
— 足立 智広 (@chihiro_adachi) 2018年3月8日
Symfonyは3.4.xを採用
- 当時のLTSだった
- 4のLTSはまだ4.0が開発中だったこともあって見送り
Laravelはどう?という声もあった
- 3.0でユーザさんにだいぶ負荷をかけた
- 学習コスト面、既存の知識が使えなくなる等
- できるだけ近しいフレームワークを選択したかった
SilexからSymfonyへの移行の仕方
- Hello Worldから始める
- プラグインの機構づくりも必要だったので、コンテナのコードリーディングやBundleの作成方法も
- Silexからの移行方法はこちらにまとめました
コンテナのコンパイルの流れ
ちょっとマニアックな資料もあります
Symfonyのよいところ
- 後方互換性の担保
- composer updateを定期的にしているがほぼ問題になることがない
- (たまにEC-CUBEのTravis-CIが落ちるときもある)
- 安心して使える、計画できる
Symfonyのよいところ
- EC-CUBEのプラグインの機構はほぼSymfonyの拡張に乗っかって作っている
- Event/WorkFlow/Auto Configure/Autowiringなどなど
- 3.1のプロトタイプ開発時は、結構独自実装しようとしていた
- ServiceProviderを定義しなくてもDIできる仕組み
- アノテーションでルーティング設定とか
Symfonyのよいところ
- Silex版のEC-CUBEと比較して、標準状態のパフォーマンスが倍に
- 正確には、Silexでは細かいチューニングが必要だったのが、Symfonyではprodモードに切り替えるだけで設定できるようになった
Symfonyで苦労したところ
- 日本語情報が。。。(当時)
- 今は「PHPフレームワーク Symfony 4入門」がでて嬉しいです!
ありがとうございました
- EC-CUBEを通じて、もっともっとSymfonyに触れてくれる人を増やしていきたい
- みんなで普及していきましょう!