構造体にまとめる

構造体へまとめるための指針

まとまりに名前があるもの

  • 具体的なモノであれ、抽象的な概念であれ、その値の集合に名前がある場合は構造体としてまとめるべき。
  • ただし、この指針には問題があって、自分が知らない、自分が思いつかないだけ、という場合が多い。

対象をひとまとまりのモノとして扱える場合

  • 内部について細かいことを考えずに扱える処理がある場合。 (もしくは内部について考えたくない場合。)
  • もしくはそのデータをひとまとめにして受け取る関数が考えられる場合。
○○を××する
○○が××かどうか ?

といった表現ができる場合の ○○

do_something(data);

そのまとまりを処理するための関数が存在するか ?

オブジェクト指向の機能のある言語の場合 (C#, Java など)

  • そのデータの集合にメンバー関数を定義できるか

オブジェクト指向の機能のない言語の場合 (C など)

  • そのデータの集合を第一引数にとって、処理をする関数を考えられるかどうか

参考資料