Symfony は Model View Controller (MVC) パラダイムに従ったWebアプリケーションフレームワークで、PHPで書かれている。symfony-project.com というサイトは2005年10月18日に立ち上げられた[2]。
目的
SymfonyはWebアプリケーションの開発と保守の効率化を目的とし、よく繰り返されるコーディングを代替する。UNIX、Linux、macOS、Windowsで動作し、利用するにはWebサーバとPHPの他パッケージ管理にComposerを利用する。オブジェクト関係マッピングとしては、PropelとDoctrineをサポートしている[3]。
技術
SymfonyはModel View Controllerなどのよく知られたデザインパターンを採用している他、依存性の注入による必要オブジェクトの解決を行う。[4] また、ルーティングには設定ファイルで行う方法の他、アノテーションなどを利用する事が出来る。Spring Framework[5]やRuby on Railsなどの他のWebアプリケーションフレームワークに影響を受けている。
また、以下のようなPHP関連のオープンソースプロジェクトの成果をフレームワークの一部として多数利用している。
スポンサー
SymfonyのスポンサーはフランスのSensio Labsである[7]。このため、初期の名称は「Sensio Framework」であった[8]。そして、各クラス名には「Sensio Framework」の頭文字である "sf" というプレフィックスが付いているが、オープンソースのフレームワークにすることが決まり、議論の結果プレフィックスをそのまま生かせる「Symfony」に改称された[9]。
応用例
他にも多数のサイトならびにフレームワークでSymfonyまたはそのコンポーネントの一部が使われている[16][17]。
開発ロードマップ
Symfony 4.0 世代では Flex という構成ツールが標準で利用されるようになり、必要な機能をレシピとして構成するようになった。HTTPメッセージのやり取りに集中したマイクロフレームワークとしての利用も可能になり、それに伴いマイクロフレームワーク Silex の開発が終了となっている。[18]
リリース
色
|
意味
|
赤
|
サポート終了
|
緑
|
サポート中
|
青
|
将来のリリース
|
バージョン
|
リリース日
|
サポート
|
対応PHPバージョン
|
保守終了予定
|
備考
|
1.0
|
2007年1月
|
3年
|
5.0以降
|
2010年1月
|
|
1.1
|
2008年6月
|
1年
|
5.1以降
|
2009年6月
|
セキュリティ関連パッチは2010年6月まで適用される。
|
1.2
|
2008年12月
|
1年
|
5.2以降
|
2009年12月
|
|
1.3
|
2009年12月
|
1年
|
5.2以降
|
2010年12月
|
1.4は1.3の長期サポート版である。2つのバージョンの違いは古いバージョンの symfony との後方互換性があるかどうかである。 1.3の開発期間に廃止予定になった古いバージョン(1.0~1.2)の後方互換性レイヤーとすべての機能を1.3は利用できる。 1.4は廃止予定のすべての機能(完全な互換性レイヤーを含めて)が削除されている。[19]
|
1.4
|
2009年12月
|
3年
|
5.2以降
|
2012年11月
|
2.0
|
2011年7月
|
|
5.3.2以降
|
2013年3月
|
最終的に、Symfony 2.0.23までバージョンアップされている。[20]
|
2.1
|
2012年9月
|
8か月
|
5.3.3以降
|
2013年6月
|
|
2.2
|
2013年3月
|
8か月
|
5.3.3以降
|
2013年11月
|
|
2.3
|
2013年6月
|
3年
|
5.3.3以降
|
2016年5月
|
長期サポート版
|
2.4
|
2013年11月
|
8か月
|
5.3.3以降
|
2014年7月
|
|
2.5
|
2014年5月
|
14か月
|
5.3.3以降
|
2015年7月
|
|
2.6
|
2014年11月
|
14か月
|
5.3.3以降
|
2016年1月
|
|
2.7
|
2015年5月
|
3年
|
5.3.9以降
|
2018年5月
|
長期サポート版
|
2.8
|
2015年11月
|
3年
|
5.3.9以降
|
2018年11月
|
長期サポート版
|
3.0
|
2015年11月
|
8か月
|
5.5以降
|
2016年6月
|
|
3.1
|
2016年5月
|
8か月
|
5.5.9以降
|
2017年1月
|
|
3.2
|
2016年11月
|
8か月
|
5.5.9以降
|
2017年6月
|
|
3.3
|
2017年5月
|
8か月
|
5.5.9以降
|
2018年1月
|
|
3.4
|
2017年11月
|
3年
|
5.5.9以降
|
2020年11月
|
長期サポート版
|
4.0
|
2017年11月
|
8か月
|
7.1.3以降
|
2018年7月
|
HHVMのサポートを終了
|
4.1
|
2018年5月
|
8か月
|
7.1.3以降
|
2019年1月
|
|
4.2
|
2018年11月
|
8か月
|
7.1.3以降
|
2020年1月
|
|
4.3
|
2019年5月
|
8か月
|
7.1.3以降
|
2020年7月
|
|
4.4
|
2019年11月
|
3年
|
7.1.3以降
|
2023年11月
|
長期サポート版
|
5.0
|
2019年11月
|
8か月
|
7.2.5以降
|
2020年7月
|
|
5.1
|
2020年5月
|
8か月
|
7.2.5以降
|
2021年1月
|
|
5.2
|
2020年11月
|
8か月
|
7.2.5以降
|
2021年7月
|
|
5.3
|
2021年5月
|
8か月
|
7.2.5以降
|
2022年1月
|
|
5.4
|
2021年11月
|
3年
|
7.2.5以降
|
2024年11月
|
長期サポート版
|
6.0
|
2021年11月
|
8か月
|
8.0.2以降
|
2022年7月
|
|
6.1
|
2022年5月
|
8か月
|
8.0.2以降
|
2023年1月
|
|
脚注
関連項目
参考文献
- Potencier, Fabien and Zaninotto, François. (2007). The Definitive Guide to symfony. Apress. ISBN 1-59059-786-9.
- Potencier, Fabien. (2009). Practical symfony (2009). Sensio Labs Books. Doctrine edition, ISBN 978-2-918390-06-0, Propel edition, 978-2918390077
外部リンク