〜オブジェクト指向的分析、アプリ拡張の実装とテスト〜ツイート今回は、作成した仕様、設計した機能に関して実装していこうと思います。前回作成した仕様、機能に関しては以下にまとめておきます。口座の預金額と口座を持っている人を一意にするそして、上の仕様をいっぺんに実装するのは自分の頭では追いつかないので諦めて、1つずつ考えていこうと思います。仕様1「口座を開設している人の情報を保存する」に関して、ますは「口座を開設する」機能が必要です。いうかこれがないとこれ以降の機能が実装できません。?口座が作成されないと口座を開設している人が追加できない、つまり口座を持っている人が0人のまま。いうことになるからです。ファイルには、カンマ区切りの「CSV」形式でデータを登録するファイル入出力の実装やっと実装にたどり着きました。ここまで来た方おめでとうございます。このページに来た方、ブログなのでいつでもこれ以前の記事を参照できます。下のリンクで一覧が見れます。よかったらチャレンジしてみてください。学習フロー」java.io.Fileクラスこのクラスを使用してファイルの操作を行います。ここで注意して欲しいのは「Fileクラス」はファイル、ディレクトリ(フォルダ)を表現するクラスであり、「入出力」は別のクラスを使用する必要があるというところです。java.io.BufferedWriterクラス上のFileクラスと併用してこのクラスでファイルへの書き出しを行います。四の五の言っても意味がないので、コードから見ていきます。上の2クラスの作成(生成)を行います。口座を操作、管理するクラスは「KozaManager」と名付けました。System.out.println("ファイルオープンに失敗しました。}}コンストラクタで、ファイルの書き出し、読み込みクラスを作成(生成)しています。{...}」リーダー(BufferedReader)を作成しています。}で例外処理を作成しています。私事ではありますが、「テスト」に対しての認識を共有したく思い「テスト駆動開発」でやっていきたいと思っています。このテスト駆動型開発は「仕様を明確にする」のが至上命令で、「どーゆー風に動けば良いか?」を一番に考えます。なんか当たり前な話に聞こえますが、「当たり前」はできていなくてはならない(実際難しい。頑張りましょう(笑)というわけで、テストケースから作成していきます。詳細に関してはこちらを参照してくださいwwww。余談テスト駆動型開発がオススメな理由、というか自分の考えですが、テストケースがちゃんとできていれば「テストが通れば、実装内容はほぼ自由」で良いことになります。リファクタリングをするにも「テストが通ればデグレートの心配はない」ということになります。テストは自動で実行できるツール(Mavenなど)があるので、テスト処理を流して帰宅するのもおっけーです(作業時間に余裕が必要ですが。今回のテストはファイルの読み込みと書き出しができることを確認するためのケースを作成します。このテストケースを通る(エラーが出ない)のであれば実装は完了になります。考えなくてはいけないのがいかになります。操作するファイルが存在しなければ、作成し、存在すればそのまま参照する同様にファイルへ(口座の)ユーザー情報をファイル(CSV形式)への出力、保存ができること同様にファイルの読み込みができること読み込んだファイルのデータをユーザー情報クラスで取得できること(同様にファイルへ出力できること)上の4項目を満たすようなクラスができれば、現状はおっけーです。今回は、ここまでにします。