ゲーム エンジンとゲームにかなり長い間使用してきたデザインについて疑問に思っていました。Object クラスがあるとしましょう
class Object
{
public:
const std::string& getName() { return m_name; }
private:
std::string m_name;
}
次に、Object のインスタンスを保持する ObjectManager というクラスがあります。ここで、そのインスタンスを ObjectManager で非公開にし、コードを複製して getName() を呼び出せるようにするか、カプセル化の概念を無効にするオブジェクトを公開にするかを考えていました。皆さんはどちらのデザインが良いと思いますか?
助けてくれてありがとう!