ソフトウェアコードのはじめかた
- プロジェクト名や名前空間の雑さはIDEなどの強力さを考慮して決めること
- プロジェクトをつくるときは次の手順でやること
- てきとうにスキャッフォルドでつくる。gradle initとか。
- gitignoreを追加する gitignore.io - Create Useful .gitignore Files For Your Project
- git init
- git add
- git commit で↑までにやったコマンドやWebサービスでの指定方法などをコメントにのこす
- 要件を確認してアーキテクチャと単語の整理
- noteという名前空間をつくり、そこにメモ書き用テストファイルをつくる。
- 要件をテストコードにはりつける
- 要件の一部をテストコードに翻訳する。簡単なケースだけでいい。 : RED
- プロダクトコードを仮実装する。 : GREEN
- 他の入出力のケースをテストに追加する。三角測量。 : RED
- プロダクトコードを修正する。 : GREEN
- テストコードをリファクタリングする。 : GREEN
- 何をクラスとして切り出すかは、何をつくりたいのかを定義している段階できまるので、コードをかきながら決めないほうがいい。
- テストコードはできるだけ長く書きはじめていく。テストコードは動的構造を記述する部分であり、プロトコル定義ツールとして使う。
- 小さいテストコードはあくまでデバッグのサポート、型システムのサポート程度に考えて記述する。
- 静的構造はプロダクトコード側で記述できる内容なので、プロダクトコードのリファクタリングや大枠の設計でおこなうようにする。
- テストコードとプロダクトコードの設計がかたまったら、noteにあるテストコードを適切な名前空間にきりだしてあげる。