モブプログラミングでTDDを実践しよう会の進行用スクリプト
- Node.jsのインストール
- Visual Studio Codeのインストール
- Visual Studio Live Share 拡張機能のインストール
- タイマー
※ 実際に実装やテストを作成する際に用いる、JavaScriptのテストフレームワーク「Jest」のセットアップ済みのリポジトリは運営側で準備しています。
- 事前説明 10分
- ドライバー順序決定
- モビング (第1部) 50分
- 休憩 10分
- モビング (第2部) 50分
- 振り返り
- ナビゲーター
- ドライバーに実装や操作を指示する人
- ドライバー
- ナビゲーターの指示で実装や操作を行う人
- ナビゲーター
- ドライバー以外はナビゲーターを担当する
- ナビゲーターはどのように実装するかを考えて、ドライバーに指示する
- ドライバー
- ドライバーは1人が担当する
- ドライバーは10分ごとに交代する
- ドライバーはナビゲーターの指示でコードを書く
- ドライバーはナビゲーターの指示を理解できるまで質問する
- ドライバーはやることを言葉にする
以下の条件を満たすプログラムを書いてください。
- 引数で渡される数字を文字列として出力
- 引数で渡された数字が1~100の範囲でない場合はエラーをスロー
- 3の倍数が引数のときは「Fizz」と出力
- 5の倍数が引数のときは「Buzz」と出力
- 3と5の倍数が引数のときは「FizzBuzz」と出力
以下の条件を満たすプログラムを書いてください。
- 引数で渡される年がうるう年であるかを真偽値として出力
- 引数で渡された年が1900~2021の範囲でない場合はエラーをスロー
以下の条件を満たすプログラムを書いてください。
- 引数で渡されたURLをパースして、以下の情報を出力
- 例:
http://foo.bar.com/foobar.html
- Protocol :
http
- Subdomain:
foo
- Domain name:
bar.com
- Port:
80
- Path:
foobar.html
- Protocol :
- 例:
- Protocolは下記の4種類を取り扱い、Portは対応したものを使用
http
:80
https
:443
ftp
:21
sftp
:22
- Domainは
.com
や.net
などのトップレベルドメインのみサポート - ローカルネットワークホスト名をサポート
http://localhost
のような形式
※1 URLの形式は protocol"://"[subdomain]host[top-level-domain][":" port][path]["?" parameters]["#" anchor]
とする。
※2 URLオブジェクトのような標準組み込みオブジェクトを使用してはならない。