PyCon JP 2018: Webアプリケーションの仕組み (ネタメモ)
PyCon JP 2018: Webアプリケーションの仕組み (発表資料) のネタメモです。
トークの公開情報: Webアプリケーションの仕組み セッション一覧 - PyCon JP 2018
2018-9-17 13:30Talk(45min)コンベンションホール
発表言語 : 日本語
資料言語 : 日本語
Level : Beginner
Webアプリ関連技術の仕組みについて紹介します。そこから、今のWebアプリケーション開発に使われるフレームワークやスタックの利点紹介します。仕組みを理解してさらに加速しましょう。
発表詳細
最近のアプリケーション開発は、上から下まで幅広い範囲を知っていてあたりまえになっていて、そういったアプリケーション開発をサポートするフレームワークやツールが非常に充実しています。たとえばWeb開発であれば、Djangoの使い方が分かれば、HTTP通信でなにが起きているか、TCP/IPでなにが起きているか知らなくてもなんとかなります。しかし、代わりにDjangoが提供する機能を全て覚えないといけない気になってしまっていないでしょうか?あるいは突然、HTTP_HOSTヘッダーのセキュリティー警告がメールが飛んできて、どうしたらよいか戸惑ったりしていないでしょうか?
これから先も開発を高速に進めるために、一度高速道路を降りて、これまでフレームワークが隠蔽していた基礎を勉強してみるのも良いと思います。フレームワークを使わずに同じことを実現する実験をしてみましょう。
このトークセッションでは、Pythonを使って、フレームワークなしでWebアプリを作るにはどうすればいいのかを紹介します。またそこから、今のWebアプリケーション開発に使われるフレームワークやスタックがなぜ必要とされているか、どのような利点があるのかを紹介します。
最も伝えたい事
Webアプリケーション開発をする人がWebフレームワークから離れて寄り道することで得られるもの
スライドの作り方
発表ではScrapboxを使って発表をする
Scrapboxでは全体のアウトラインを一つのページにまとめて使う
最初から用意しておく範囲はイメージ図をおいて分かりやすくする
キーワードはリンクにしておく
デッドリンク(赤色)がないように各キーワードの方にも説明を書く
スライド本体はキーワードの解説を少なくする(各ページに移す)
発表のしかた
発表の内容はある程度決めておいて全体を紹介しながら質問をうけて補足説明をしていく
質問が出ない場合もあるので、その場合補足したい箇所を事前にきめておく
ライブコーディングをやりたい(通信が不安)
手法・アウトライン
西尾さんの クラスなんていらないさ! の Web 版を作る
シンプルだとこんな問題が起きたのでこうしたいという展開でどんどんとやりたいことを増やしていく
Webフレームワークの使い方は覚える事が多く大変、ならば、フレームワークなしで作って見よう
まず、一般的なWebフレームワークが提供する機能の全体像を図示する
Webサイト黎明期のシンプルな動作を紹介
ネタメモ
事例
ロードバランサー + Webサーバー + Webアプリケーション
Web開発に入門しづらい問題:_LB+Webサーバ+Webアプリ
それぞれのポートはどう繋がっているか
ロードバランサーが落ちたらどうするの
SSL証明書の取り扱い問題
Djangoのフォームにdatepickerでカレンダー表示
Web開発に入門しづらい問題:_Python+Django+bootstrap+datepicker
プロセスがどう実行されてるのかよくわからない
Web開発に入門しづらい問題:_systemd+gunicorn+celery
Webアプリケーション開発での問題の切り分け方、の観点
ログを出す、保存する Django_+_gunicorn_のログ出力設定
Web開発に入門するときの学び方、の観点
Webアプリケーション開発に必要なスキル
AWSの使い方
情報多すぎ
高速道路(フレームワーク)
学習の高速道路
エンジニアになる覚悟
Python標準ライブラリだけでWebフレームワークっぽくしてみる - Python Web フレームワーク アドベントカレンダー2010 — 清水川Web
とりあえずフレームワークとか忘れましょう。Pythonは標準でも色々できます。で、色々やってみて不便だと思ってから自分の目的に向いているフレームワークを探してみると良いんじゃないかな。