BottleとはPythonに活用されるオープンソースWebアプリケーションフレームワークです。
マイクロフレームワークと呼ばれており一つのファイルで構成されているという特徴があります。Python向けフレームワークの中で最もシンプルで軽量なフレームワークとして現在でも利用者を伸ばし続けております。この記事ではBottleを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説していきます。
Bottle(ボトル)とはPythonに活用されるマルセル・ヘルカンプ氏によって開発されたWebアプリケーションフレームワークです。2009年7月に高速、シンプル、軽量になるように設計されたマイクロフレームワークとして誕生しました。シンプルさを売りにしていることから標準搭載された機能は限定的なものです。どれほどシンプルかというとBottleは一つのファイルで構成されております。マイクロフレームワークであるFlaskと同様に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
Pythonとはグイド・ヴァンロッサム氏によって1991年に開発された汎用的に使用されるプログラミング言語です。サーバサイド言語としてWebアプリケーションやデスクトップアプリケーションの開発に使われるだけでなく、組み込み開発、自動処理、統計・解析、機械学習など幅広い領域に対応出来るプログラミング言語として親しまれております。特徴として『コードがシンプルで覚えやすい』『少ない記述で多くの処理が可能』などが挙げられます。Pythonは人工知能(AI)やビッグデータなどトレンドの分野にて重宝されております。
『Pythonにおけるシステム開発を簡単に行えるように用意された枠組みのこと』
PythonフレームワークとはPythonにおけるシステム開発のプログラミングを効率的に実施するために汎用的な機能群をまとめ、システムの骨組みとなるテンプレートまで用意してくれる枠組みのことです。フレームワークを活用することでプログラミングにおける記述コードを最小限に抑えることが出来ます。Pythonフレームワークの代表的な種類としてDjango、Flask、Bottleなどが挙げられます。
Pythonフレームワーク人気どころ6選ついて解説された記事はこちら>>
Bottleの読み方は『ボトル』です。名前の由来に関する情報はありませんでしたが、Bottleを直訳すると「瓶、ひと瓶の量」という意味があります。Bottleが使用しているロゴも瓶のようなデザインであることからこのような意味が込められていると読み取れます。
Bottleは2009年7月にマルセル・ヘルカンプ氏の開発によって誕生しました。Python向けフレームワークの中で最もシンプルで軽量なフレームワークとして現在でも利用者を伸ばし続けております。バージョンアップについて簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
2009年7月 | Bottle 初版リリース |
2016年12月 | Bottle 0.12.11 リリース |
2017年1月 | Bottle 0.12.12 リリース |
2019年12月 | Bottle 0.12.18リリース |
Bottleの特徴を見ていきましょう。
Bottleはマイクロフレームワークという特徴があります。高速、シンプル、軽量になるように設計されております。同じくPython向けのフレームワークであるFlaskと同様に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
マイクロフレームワークの特徴、種類などについて解説された記事はこちら>>
Bottleは学習コストが低いという特徴があります。Flaskも学習コストが低いことで有名ですが、BottleはFlaskよりも学習用ドキュメントが1/3(Bottle:100ページ程 / Flask:300ページ程 )となっております。
Bottleは一つのファイルで構成されているという特徴があります。そのため導入がとても簡単で動作が速く、シンプルで使いやすい、そしてレンダリングが高速なのです。
Bottle以外のPythonによるシステム開発に用いられる代表的なフレームワークを紹介させていただきます。
Django(ジャンゴ)とはPythonに活用されジャンゴソフトウェア財団によって管理されているWebアプリケーションフレームワークです。2005年にニュース系サイトに利用されることを目的に誕生しました。特徴として『速い』『安全』『柔軟性・拡張性』を掲げております。このようにDjangoを使用すると、より少ないコードで、より迅速に、より優れたWebアプリケーションを構築することができます。またDjangoというその名の由来はフランスで活躍したジャズバンド「ジプシー・スウィング」のギタリストである『ジャンゴ・ラインハルト』にちなんで名付けられたそうです。Djangoを利用している有名なサービスとして『Instagram』『YouTube』『DropBox』などが挙げられます。数あるPython向けのフレームワークの中でも知名度、普及率ともにトップの人気を集めております。
Flask(フラスク)とはPythonに活用されるアーミン・ロナッチャー氏によって開発されたWebアプリケーションフレームワークです。2010年4月1日のエイプリールフールに誕生し、アーミン・ロナッチャー氏は「エイプリールフールのジョークで作ったのだが、いつの間にか有名にそして本格的になってしまった」と語っております。特徴として提供される機能を最小限に抑えていることから『マイクロフレームワーク』と呼ばれております。シンプルな作りであることから学習コストが低く、導入障壁が低いこともメリットとして挙げられます。特に小規模でシンプルなWebアプリケーションの開発を実行する際に人気を集めております。
Tornado(トルネード)とはPythonに活用されるFriendFeed社によって開発されたWebアプリケーションフレームワークです。2009年に誕生し、FriendFeed社がFacebook社に吸収された後にオープンソース化されました。特徴として『非同期処理』や『同時接続処理』を得意しております。ノンブロッキングネットワークI / Oを使用することで、数万のオープン接続に拡張できるため、 ロングポーリング、 WebSocket、および各ユーザーへの長期間の接続を必要とするその他のアプリケーションに最適です。
Bottleを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説させていただきました。Bottleを一言で表すと『最もシンプルで軽量なPython向けマイクロフレームワーク』です。Bottleには『学習コストが低い』『一つのファイルで構成されている』といった特徴が挙げられます。Bottleについてこの記事に記載されている最低限の内容は理解しておくようにしましょう。