BACKEND DEVELOPMENT · GO × JUPYTER
Backend in One Go
Goで、バックエンドを一気にひと通り。
00-setup — 環境チェック
00.0
環境チェック — Go / HTML表 / グラフ / SQLite の動作確認
01-oop — オブジェクト指向(Go流)
02-database — データベース
02.1
リレーショナルモデル
[解答]
— 非正規化テーブルの重複・更新異常を実測する
02.2
SQLのCRUD操作
[解答]
— CREATE/INSERT/SELECT/UPDATE/DELETEを動かす
02.4
データモデリングと正規化
[解答]
— 1NF〜3NFで更新異常を消す
02.5
トランザクションとインデックス
[解答]
— ロールバックとEXPLAIN QUERY PLANで検索方式を見る
03-network-server — ネットワークとサーバー
03.1
クライアント・サーバーとTCP
[解答]
— 生ソケットでポート・接続を実感する
03.3
net/httpでWebサーバーを書く
[解答]
— ServeMuxとハンドラを0から
04-api — API設計とアーキテクチャ
04.2
REST APIを作る
[解答]
— encoding/json と httptest でCRUDを実装する
04.3
3層アーキテクチャとDAO
[解答]
— ハンドラ・サービス・DAOの役割分担を実ログで見る
04.4
認証・ウェブセキュリティ
[解答]
— SQLインジェクション対策・bcrypt・自作JWTを実演する
05-framework — フレームワークと自作
05.1
フレームワークが無いと何が辛いか
[解答]
— 定形処理の重複を実測する
05.2
自作ミニWebフレームワーク
[解答]
— ルーティング・ミドルウェア・コンテキスト・バリデーションを組み立てる