次のモデルを想像してください。
- テーブルには多くの行があります
- 行には多くのセルがあります
これらのクラスを「オブジェクト指向の方法」で処理するための好ましいインターフェースは何でしょうか?
1 - プロパティ行/セルへのアクセスを提供します(必ずしも基になるデータ構造を公開する必要はありませんが、たとえばクラス RowCollection を作成します...)
my_table = new Table()
my_table.rows.add([1,2,3])
my_row = my_table.rows.get(0)
my_row.cells.get(0)
for(cell in my_row.cells) {}
...
2 - または、メソッドをTableおよびRowクラスに直接提供します
my_table = new Table()
my_table.add_row([1,2,3])
my_row = my_table.get_row(0)
my_row.get_cell(0)
for(cell in my_row.get_cells) {}
...
3 - 上記のいずれでもない...