CherryPyとはPythonに活用されるオブジェクト指向Webアプリケーションフレームワークです。ミニマリストのフレームワークとして10年以上の実績があります。この記事ではCherryPyを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説していきます。
CherryPy(チェリーパイ)とはPythonに活用されるレミ・ドロン氏が中心となって開発されたオブジェクト指向Webアプリケーションフレームワークです。CherryPyは誕生から10年以上が経過しており、非常に高速で安定していることから数多くの方に人気を集めております。特徴として「オブジェクト指向」「HTTPプロトコルをラップ(Webアプリの素早い開発を目的に)」などが挙げられます。開発者であるレミ・ドロン氏の目的として「CherryPy を可能な限りPythonらしくする」ということが掲げられております。
Pythonとはグイド・ヴァンロッサム氏によって1991年に開発された汎用的に使用されるプログラミング言語です。サーバサイド言語としてWebアプリケーションやデスクトップアプリケーションの開発に使われるだけでなく、組み込み開発、自動処理、統計・解析、機械学習など幅広い領域に対応出来るプログラミング言語として親しまれております。特徴として『コードがシンプルで覚えやすい』『少ない記述で多くの処理が可能』などが挙げられます。Pythonは人工知能(AI)やビッグデータなどトレンドの分野にて重宝されております。
『Pythonにおけるシステム開発を簡単に行えるように用意された枠組みのこと』
PythonフレームワークとはPythonにおけるシステム開発のプログラミングを効率的に実施するために汎用的な機能群をまとめ、システムの骨組みとなるテンプレートまで用意してくれる枠組みのことです。フレームワークを活用することでプログラミングにおける記述コードを最小限に抑えることが出来ます。Pythonフレームワークの代表的な種類としてDjango、Flask、Bottleなどが挙げられます。
Pythonフレームワーク人気どころ6選ついて解説された記事はこちら>>
CherryPyの読み方は『チェリーパイ/チェリーピー』です。名前の由来に関する情報はありませんでしたが、CherryPyのロゴからも分かる通り「Cherry」はサクランボ。「Py」はPythonの略式であることが推測されます。
CherryPyは2001年にレミ・ドロン氏が最もPythonらしく活用できるというフレームワークを作成することを目的の元にプロジェクトを発足し誕生しました。公式サイトに残っている最初のバージョンリリースの記録は2005年5月の『CherryPy 2.0.0』です。誕生から10年以上が経過しており、非常に高速で安定していることから数多くの方に人気を集めております。それから数多くのバージョンアップを重ねて2020年現在『CherryPy 18.6.0』が最新となっております。バージョンアップについて簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
2005年5月 | CherrPy 2.0.0 初版リリース |
2006年12月 | CherrPy 3.0.0リリース |
2015年12月 | CherrPy 4.0.0リリース |
2016年2月 | CherrPy 5.0.0リリース |
2016年6月 | CherrPy 6.0.0リリース |
2016年7月 | CherrPy 7.0.0リリース |
2016年8月 | CherrPy 8.0.0リリース |
2017年1月20日 | CherrPy 9.0.0リリース |
2017年1月21日 | CherrPy 10.0.0リリース |
2017年7月 | CherrPy 11.0.0リリース |
2017年11月 | CherrPy 12.0.0リリース |
2017年12月 | CherrPy 13.0.0リリース |
2018年2月 | CherrPy 14.0.0リリース |
2018年5月 | CherrPy 15.0.0リリース |
2018年6月 | CherrPy 16.0.0リリース |
2018年7月 | CherrPy 17.0.0リリース |
2018年9月 | CherrPy 18.0.0リリース |
CherryPyの特徴を見ていきましょう。
CherryPyはオブジェクト指向のフレームワークという特徴があります。オブジェクト指向のようにPythonプログラム(通常のPythonのように)を記述出来ます。
CherryPyは10年以上の実績があるという特徴があります。これは現存する様々なPythonフレームワークの中でもかなりの古参です。長い月日の中で高速で安定して動作していることが証明されており、バージョンアップやメンテナンスも絶えずおこなわれていることから数多くの開発にて使用されております。
Pythonフレームワーク | 初版リリース |
CherryPy | 2001年頃 |
Django | 2005年 |
Tornado | 2009年 |
Bottle | 2009年 |
Flask | 2010年 |
CherryPy以外のPythonによるシステム開発に用いられる代表的なフレームワークを紹介させていただきます。
Django(ジャンゴ)とはPythonに活用されジャンゴソフトウェア財団によって管理されているWebアプリケーションフレームワークです。2005年にニュース系サイトに利用されることを目的に誕生しました。特徴として『速い』『安全』『柔軟性・拡張性』を掲げております。このようにDjangoを使用すると、より少ないコードで、より迅速に、より優れたWebアプリケーションを構築することができます。またDjangoというその名の由来はフランスで活躍したジャズバンド「ジプシー・スウィング」のギタリストである『ジャンゴ・ラインハルト』にちなんで名付けられたそうです。Djangoを利用している有名なサービスとして『Instagram』『YouTube』『DropBox』などが挙げられます。数あるPython向けのフレームワークの中でも知名度、普及率ともにトップの人気を集めております。
Flask(フラスク)とはPythonに活用されるアーミン・ロナッチャー氏によって開発されたWebアプリケーションフレームワークです。2010年4月1日のエイプリールフールに誕生し、アーミン・ロナッチャー氏は「エイプリールフールのジョークで作ったのだが、いつの間にか有名にそして本格的になってしまった」と語っております。特徴として提供される機能を最小限に抑えていることから『マイクロフレームワーク』と呼ばれております。シンプルな作りであることから学習コストが低く、導入障壁が低いこともメリットとして挙げられます。特に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
ております。
Bottle(ボトル)とはPythonに活用されるマルセル・ヘルカンプ氏によって開発されたWebアプリケーションフレームワークです。2009年7月に高速、シンプル、軽量になるように設計されたマイクロフレームワークとして誕生しました。シンプルさを売りにしていることから標準搭載された機能は限定的なものです。どれほどシンプルかというとBottleは一つのファイルで構成されております。マイクロフレームワークであるFlaskと同様に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
CherryPyを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説させていただきました。CherryPyを一言で表すと『10年以上の実績を誇るPython向けオブジェクト指向フレームワーク 』です。CherryPyについてこの記事に記載されている最低限の内容は理解しておくようにしましょう。