日期:2014-05-17  浏览次数:20586 次

我现在知道类 对象 接口 但我不知道一个项目应该怎么构架类 行为 属性请问我应该看那方面的书呀~~
我现在知道类 对象 接口 但我不知道一个项目应该怎么构架类 行为 属性请问我应该看那方面的书呀~~



如题~~很是迷惑~

------解决方案--------------------
我觉得应该看系统设计的相关书
------解决方案--------------------
软件工程的书, 尤其是面向对象设计的,
名字看起来象"面向对象程序设计"这类的都可以
------解决方案--------------------
《深入PHP面向对象,模式与实践》先看十遍
------解决方案--------------------
老师在黑板上画个圆
老师在黑板上画个三角
老师在纸上画个圆
------解决方案--------------------
探讨

楼上的 说的不错 请问这个画行在什么地方定义

------解决方案--------------------
4楼的书目前不推荐,因为那个不是面向对象入门书. 大部分OO分析/设计/编程的书是用java/c++等写成,php的有,但是不推荐. 所以,去找java的书

你7楼的问题, "请问 画(圆)这个行为 在那个写 应该是人,还是黑板呀 还是圆"
我的回答是: 都可以
因为"画"这个动作,它们3方都有参与,而且都不可缺. 在任何一方实现都是可以的写法. 
这个是你在设计阶段要决定的,而且也有可能在重构时改变. 
放在哪里能让你的设计更容易理解,更简单等等...就更好

同时, 应该在设计时保持一致性, 比如一般不应该"老师"里也有一个"画","圆"里也有一个"被画",
这样让人疑惑,而且很可能是重复的代码, 同样的, 如果"圆"里有"被画","正方形"里也应该有个"被画",
这时你可以将这个"被画"抽象到他们的抽象父类"形状"里去....

当你面对不同的需求的时候,你会发现不同的设计会带来不同的感觉和后果, 
所以,相比于这样比较"虚"的例子,你不如去直接写一个小小的实际的项目,(比如一个小bbs?)
那样更容易让需求具体化,可以写出实际的代码,也就能更好地体会.