Symfony

Webアプリケーションフレームワークの一つ

SymfonyModel View Controller (MVC) パラダイムに従ったWebアプリケーションフレームワークで、PHPで書かれている。symfony-project.com というサイトは2005年10月18日に立ち上げられた[2]

Symfony
Symfonyのデフォルトプロジェクト
開発元 Sensio Labs
最新版
6.1.7[1] / 2022年10月29日 (17か月前) (2022-10-29)
リポジトリ ウィキデータを編集
プログラミング
言語
PHP
プラットフォーム クロスプラットフォーム
種別 Webアプリケーションフレームワーク
ライセンス MIT License
公式サイト symfony.com
テンプレートを表示

目的 編集

SymfonyはWebアプリケーションの開発と保守の効率化を目的とし、よく繰り返されるコーディングを代替する。UNIXLinuxmacOSWindowsで動作し、利用するにはWebサーバとPHPの他パッケージ管理にComposerを利用する。オブジェクト関係マッピングとしては、PropelDoctrineをサポートしている[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月

脚注 編集

  1. ^ Releases” (英語). Symfony Blog. 2022年11月21日閲覧。
  2. ^ symfony Web PHP Framework » Blog » Two years of symfony
  3. ^ Symfony Plugins
  4. ^ The DependencyInjection Component (Symfony Docs)” (英語). symfony.com. 2019年9月11日閲覧。
  5. ^ Open-Source cross-pollination (Symfony Blog)” (英語). symfony.com. 2020年6月6日閲覧。
  6. ^ Testing (Symfony Docs)” (英語). symfony.com. 2019年9月11日閲覧。
  7. ^ Learn symfony: A Beginner's Tutorial
  8. ^ symfony framework forum: General discussion ⇒ New symfony tagline brainstorming
  9. ^ Comments by Sensio Owner
  10. ^ Symfony Blog - Delicious Preview built with Symfony
  11. ^ Symfony Blog - Yahoo! Bookmarks uses Symfony
  12. ^ Symfony Blog - Dailymotion, powered by Symfony
  13. ^ Why We Use Symfony” (英語). Drupal.org (2021年3月23日). 2021年11月10日閲覧。
  14. ^ Drupal (Projects using Symfony)” (英語). symfony.com. 2021年11月10日閲覧。
  15. ^ Laravel (Projects using Symfony)” (英語). symfony.com. 2021年11月20日閲覧。
  16. ^ Symfony-powered sites
  17. ^ Projects using Symfony Components” (英語). symfony.com. 2021年11月10日閲覧。
  18. ^ The end of Silex (Symfony Blog)” (英語). symfony.com. 2019年9月11日閲覧。
  19. ^ [1]
  20. ^ [2]

関連項目 編集

  • Webアプリケーションフレームワーク
  • Twig - Symfony2がデフォルトとするテンプレートエンジン
  • Laravel - Symfonyコンポーネントを実装の一部に利用するWebアプリケーションフレームワーク
  • Silex - Symfonyコンポーネントを実装の一部に利用するWebアプリケーションフレームワーク

参考文献 編集

  • 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

外部リンク 編集