水曜日 3:30 p.m.–4:15 p.m.
Room 202 #pyconjp_202基礎から学ぶWebアプリケーションフレームワークの作り方
Masashi Shibata
- 対象レベル:
- 中級
- カテゴリ:
- Web Frameworks
- スライド:
- http://c-bata.link/webframework-in-python/slide.html#1
- ビデオ:
- https://youtu.be/S-InxJA5NOg?list=PLMkWB0UjwFGlYvIcvKsGhJ7SJIODj_zJZ
説明
PythonのWebアプリケーションフレームワークを開発するために必要な知識を実際のPythonのコードをベースに解説していきます。
概要
Web開発を行う際は、FlaskやDjango等のWebアプリケーションフレームワークを活用することが多く、日頃の開発の中でそのフレームワークの実装まで意識しているという方は少ないのではないでしょうか。
本発表では、Pythonの具体的なコードをベースにWebアプリケーションフレームワークを作る上で必要となる知識について解説します。Hello Worldをスタートとして、ルーティングやリクエスト・レスポンスのハンドリング方法、CSSやJS等の静的ファイルの扱いなどWebアプリケーションフレームワークに必要な機能とその実装方法を解説します。
次に私が開発しているKobinというフレームワークと、それを用いた実際のアプリケーションを紹介します。Kobinは本発表で紹介した機能を全て実装していますが、その実装は800行に満たない程度(5/17現在)と非常に短く、勉強用途としては最適なWebフレームワークとなっています。またType Hintsを活用しているためコードを読む上での手がかりとなる情報も既存のフレームワークに比べ多いでしょう。
下の画像は実際にKobinとAngular2を使用して作成したアプリケーションの動作の様子です(https://github.com/c-bata/kobin-example)。
![Kobinを使ったアプリケーション][1]
実際にKobinを使ったアプリケーションを見ることで、本発表の内容を実装した小さなフレームワークでも、本格的なアプリケーションが開発出来ることを体感できるかと思います。
[1]: https://raw.githubusercontent.com/c-bata/kobin-example/master/anim.gif