ぼけーっと、自分の中に、観点とそのレベルみたいなんがあるなぁって思って。書いてみた。
- A: 動く
- A-0: 動かんよ!
- A-1: とりあえず動くよ!
- A-2: 動くことをテストで確認してるよ!
- B: 異常系
- B-0: 正常系しか考えてないよ!
- B-1: 想定内の異常系が考慮されてるよ!
- B-2: 想定外の異常系でも不整合が起きないよ!
- C: サービス運用
- C-0: サービス運用がまわらんよ!
- C-1: サービス運用がまわせるよ!
- C-2: サービス運用がなくてもまわるよ!
- D: コードの保守
- D-0: 読めん!
- D-1: 変数やクラスに適切な名前がついているよ!
- D-2: コードを読めば意図が伝わるよ!
ドヤァ!
1日でできたぞ!どやぁ!って感じで。たぶん、このときが一番コード書けてるように思えるので一番楽しい。
- A-1: とりあえず動くよ!
- B-0: 正常系しか考えてないよ!
- C-0: サービス運用がまわらんよ!
- D-0: 読めん!
リリースできた!
こんな組み合わせだとバレずにリリースできてしまう。そして、サービス運用が回らなくて白目。
- A-1: とりあえず動くよ!
- B-1: 想定内の異常系が考慮されてるよ!
- C-0: サービス運用がまわらんよ!
- D-0: 読めん!
サービス運用が回るぞ!
なので、運用を考え始めるよね。
- A-1: とりあえず動くよ!
- B-1: 想定内の異常系が考慮されてるよ!
- C-1: サービス運用がまわせるよ!
- D-0: 読めん!
読める!
- A-1: とりあえず動くよ!
- B-1: 想定内の異常系が考慮されてるよ!
- C-1: サービス運用がまわせるよ!
- D-1: 変数やクラスに適切な名前がついているよ!
自動テスト!
- A-2: 動くことをテストで確認してるよ!
- B-1: 想定内の異常系が考慮されてるよ!
- C-1: サービス運用がまわせるよ!
- D-1: 変数やクラスに適切な名前がついているよ!
処理中にサーバーが落ちた
とか、ネットワークエラーとか。そういうときでも変な状態にならないよって。本当にレアなケースだったりするし、一生出会わないかもしれないけど。
- A-2: 動くことをテストで確認してるよ!
- B-2: 想定外の異常系でも不整合が起きないよ!
- C-1: サービス運用がまわせるよ!
- D-1: 変数やクラスに適切な名前がついているよ!
開発スピードを落とさない
いまDDD取り入れて、ここをやろうとしてるところ。
- A-2: 動くことをテストで確認してるよ!
- B-2: 想定外の異常系でも不整合が起きないよ!
- C-1: サービス運用がまわせるよ!
- D-2: コードを読めば意図が伝わるよ!
サービス運用なし!
全部自動でリカバリーしたりするように。これを目指したいところ。
- A-2: 動くことをテストで確認してるよ!
- B-2: 想定外の異常系でも不整合が起きないよ!
- C-2: サービス運用がなくてもまわるよ!
- D-2: コードを読めば意図が伝わるよ!