在类似于现实生活中的程序中对对象关系进行建模是个好主意吗?



问题灵感来自于对我的回答的评论:https://gamedev.stackexchange.com/questions/55251/separate-classes-communication

嗯,如果你从链接中阅读了问题和答案,就不会有太多要补充的了。所以我想听听你的意见和(非常推荐的)例子。

这就是面向对象的美妙之处。

在现实生活中,大事是由许多小事组成的。例如,汽车是由轮子、门、发动机、方向盘等组成的。

此外,你可以看着一辆福特、一辆法拉利和一辆Smart汽车,并意识到,尽管它们彼此不同,但它们都是汽车。你仍然可以对它们做"开始"、"停止"、"转弯"等操作。

这两个特性只是我们在软件开发中所认为的组合和泛化的真实例子。你可以很容易地想象一个基类Car,它具有Wheels属性,Doors属性,等等,以及Start, StopTurn方法。

我甚至认为最好的对象模型应该基于现实生活中,有形的,人们可以很容易地想象到的东西。还有什么比让你的设计一目了然更好的方法呢?

最新更新