Phoenix FrameworkがElixirベースのWebアプリケーションフレームワークです。Ruby on Railsに似たフルスタックなフレームワークであり、同フレームワークよりもさらに処理速度が早いと言われております。この記事ではPhoenix Frameworkを理解するために初心者でも分かる歴史、特徴などの基礎知識を簡単に解説していきます。
Phoenix FrameworkとはElixirベースのWebアプリケーションフレームワークです。MVCモデルを採用しており、コードと可動部分を減らしてリッチでインタラクティブなWebアプリケーションを構築します。Ruby on Railsに似たフルスタックなフレームワークであり、同フレームワークよりもさらに処理速度が早いと言われております。気軽に素早くWebアプリケーションを作成できることから多くのElixirユーザーに愛されております。
Elixirとは拡張性と保守性の高いアプリケーションを構築するためにデザインされた動的で関数型のプログラミング言語です。ElixirはErlangの仮想マシン 「BEAM」 上で使用することができます。Rubyに影響を受けた言語であることから文法が分かり易い安いことや大量の並列処理を安定的に実行できることなどで親しまれております。このような特徴を持つことからWebアプリケーション開発で利用されるシーンが増えております。
Ruby on RailsとはRubyに活用されるデビッド・ハイネマイヤー・ハンソン(David Heinemeier Hansson)氏によって開発されたオープンソースWebアプリケーションフレームワークです。2004年7月に誕生し、基本理念を『同じことを繰り返さない』と掲げております。特徴としては基本理念の名の下同じソースコードを何度も記述しなくて良い効率よく実装するための仕様となっております。さらにデータベースを直感的に操作ができる機能が提供されており好評を集めております。
Ruby on Railsの公式サイトはこちら>>
Ruby on Railsの歴史、メリットなどの基礎知識について解説された記事はこちら>>
Phoenix Frameworkの読み方は『フェニックスフレームワーク』です。呼び名は「フェニックス」と略称されることが多いです。ロゴにもエジプト神話の霊鳥『フェニックス(不死鳥)』が採用されていることから名前の由来はこれにちなんでいることが推測されます。
Phoenix FrameworkはDockYard社によってElixirベースのWebアプリケーションフレームワークとして開発され2014年に初版が誕生しました。Phoenix Frameworkは高性能でスケーラブルなWebアプリケーションを提供するために開発されました。誕生から翌年の2015年3月に「Phoenix Framework0.10.0」をリリースし、同年2015年8月に「Phoenix Framework1.0」をリリース。その後も順調にバージョンアップを続け、現在(2021年7月時点)では最新バージョンを「Phoenix Framework1.5.9」としております。簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
2014年 | 「Phoenix Framework」 誕生 |
2015年3月 | 「Phoenix Framework 0.10.0」 リリース |
2015年8月 | 「Phoenix Framework 1.0」 リリース |
2017年 | 「Phoenix Framework 1.3」 リリース |
2018年 | 「Phoenix Framework 1.4」 リリース |
2021年7月時点 | 「Phoenix Framework1.5.9が最新 |
Phoenix Frameworkの特徴を見ていきましょう。
Phoenix FrameworkはMVCモデルという特徴があります。MVCモデルとはユーザインタフェースをもつアプリケーションソフトウェアを構築する上でプログラムの中身を整理するためのデザインパターンです。MVCモデルを採用したフレームワークは数多く存在し、中でも代表的なものがJava言語においては『Struts』Rubyにおいては『Ruby on Rails』などが挙げられます。
MVCモデルの歴史、特徴などの基礎知識について解説された記事はこちら>>
Phoenix FrameworkはRuby on Railsに似ているという特徴があります。Ruby on Railsの概念を参考に誕生したその他言語のフレームワークも数多く存在し代表的なものとして『CakePHP』『Grails』などが挙げられます。
Phoenix Frameworkは処理速度が速いという特徴があります。その速度に関する性能の一部はRuby on Railsの数倍近くという実証結果も出ているようです。
Phoenix Framework以外のElixirベースによるシステム開発に用いられる代表的なフレームワークを紹介させていただきます。
Antikythera FrameworkとはElixirベースのWebアプリケーションフレームワークです。独自の社内PaaS(Platform as a Service)を構築するため誕生し、2018年4月27日に開発コミュニティ向けに公開されました特徴として「非同期ジョブ実行」「マルチコアを最大限に活用する並列実行」「マルチサービス・マルチテナント」などが挙げられます。
Phoenix Frameworkを理解するために初心者でも分かる歴史、特徴などの基礎知識を簡単に解説させていただきました。Phoenix Frameworkを一言で表すと『ElixirベースでRuby on RailsにインスパイアされたWebアプリケーションフレームワーク』です。特徴として「MVCモデル」「Ruby on Rails に似ている」「処理速度が早い」などが挙げられます。Phoenix Frameworkについてこの記事に記載されている最低限の内容は理解をしておくようにしましょう。