圖像一個遊戲,你有一個董事會和董事會是由多種細胞(磚,叫他們不管你喜歡)。如何管理需要了解屬於上層環境的事情的對象?
我們有兩個班,Board
和Cell
。董事會有一個單元格的二維數組。
如何處理這樣一個事實,即每個細胞都知道自己的事情(如何在屏幕上繪製,如果可以通過播放角色行走等等),而這些信息中的某些信息只有上層級別(如董事會所知)?例如,單元格也應該知道它在哪裏(x,y座標),但是將信息存儲在單元格(如x和y屬性)和板上(作爲數組中的索引)是多餘的。另外,例如,Cell對於瞭解它的鄰居是有用的。
什麼是在這些情況下,一個良好的面向對象設計的?
抽象將是有益的吶? Board可以包含常用功能,單元可以使用Board的高級功能,並可以定義自己的功能,如getNeighbourDetails。 – Aajan