応募トーク

これは応募されたトークです。聞きたいと思うトークをSNSで拡散しましょう。選考時に参考にさせていただきます。

talk

基礎から学ぶWebアプリケーションフレームワークの作り方(ja)

スピーカー

Masashi Shibata

対象レベル:

中級

カテゴリ:

Web Frameworks

説明

PythonのWebアプリケーションフレームワークを開発するために必要な知識を実際のPythonのコードをベースに解説していきます。

目的

「WSGIとはどういうものなのか」「WAFにはどのような機能が必要でどのように実装されているのか」これらを知ることで、Webアプリケーションフレームワークのコードを読むための知識を身につけ、日頃のWeb開発で躓いた時に問題を切り分けて解決する能力や、フレームワークを選定する能力を養うことを目的としています。

概要

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
  • このエントリーをはてなブックマークに追加