SinatraライクなPython用軽量Webフレームワーク「Juno」
最近、Sinatraの軽快さが好きになっている。大型なWebアプリケーションには向かないかもしれないが、小さなWebアプリケーションをさくっと作るのには最適だ。そしてPythonでもWebアプリケーションを作る際にもっと手軽に作れると良いと思っていた。
モデルも予め用意されている
PythonのWebアプリケーションフレームワークと言えば、Djangoが有名だ。だが少し書き方が面倒な気がしないでもない。もっとシンプルに作れるフレームワークとしてJunoを紹介しよう。
今回紹介するオープンソース・ソフトウェアはJuno、Python製の軽量Webフレームワークだ。
Junoは一つのファイル上で@routeとしてルーティング設定を書き、その下にメソッドを書くとURLに対応したルーティングができるようになる。JunoだけでWebサーバを立てて起動できるほか、FastCGIやSCGIを使って起動することもできる。
書き方はシンプル。テンプレートでビューを切り出すことが可能
テンプレートエンジンが予め用意されているほか、O/Rマッパーも用意されている。この点は好みが分かれるが、個人的には別途用意するよりも手軽で良いと感じている。フォームのデータはマップ型で受け取ることができる他、URLのパスを切り出して受け取ることもできる。
Junoを使えば1ファイルで終わるようなシンプルなWebアプリケーションも容易に作ることが出来るだろう。その意味ではGAEでの利用に向いていると言えそうだ。いつでも同じフレームワーク、プログラミング言語ではなく構築するWebアプリケーションの規模や目的によって最適なものを選択するようにされたい。
Juno: A Lightweight and Simple Web Framework http://brianreily.com/project/juno/
breily’s juno at master - GitHub http://github.com/breily/juno/tree/master/