论坛首页 入门技术论坛

我写的设计模式,准备续写下去,请大家支持_2010317更新

浏览 96691 次
该帖已经被评为良好帖
作者 正文
   发表时间:2010-03-17  
书籍已经出版,非常感谢大家的支持,这里鞠躬感谢!
书名叫做《设计模式之禅》
0 请登录后投票
   发表时间:2010-03-18  
楼主太高尚了,电子版免费提供了。 thx。
0 请登录后投票
   发表时间:2010-03-18  
justlive 写道
楼主太高尚了,电子版免费提供了。 thx。


呵呵,高尚算不上,投桃报李嘛,没有大家的顶贴也可能有这本书的出版。
0 请登录后投票
   发表时间:2010-03-19  
有点浅,有些字面解释的味道
0 请登录后投票
   发表时间:2010-03-19  
谢谢哈,太牛了!
0 请登录后投票
   发表时间:2010-03-19  
LZ你好,刚才拜读了一下你的大作,关于单一职责原则想跟你请教一下,就书中的例子,用户属性和用户行为分开为两个接口,真的有必要吗?我记得有本书说过,对象是拥有责任的某种东西,就是说对象是包括属性和行为的,这样的对象才完整,如果是这样,那为什么要分为两个接口?难道系统允许某些对象只实现属性或只实现行为吗?

书中同章节关于IUserManager的例子,change方法拆分的如此细致,如果要同时修改地址和电话两个属性的话怎么办?当然,我也不是说public void changeUser(IUserBO userBO, int type, String...changeOptions)这样好,只是就行为的粒度有些疑问,希望LZ解答,谢谢
0 请登录后投票
   发表时间:2010-03-19  
我是初学者,发表不了什么高见,但是对作者一定要支持一下
0 请登录后投票
   发表时间:2010-03-19  
ywlqi 写道
LZ你好,刚才拜读了一下你的大作,关于单一职责原则想跟你请教一下,就书中的例子,用户属性和用户行为分开为两个接口,真的有必要吗?我记得有本书说过,对象是拥有责任的某种东西,就是说对象是包括属性和行为的,这样的对象才完整,如果是这样,那为什么要分为两个接口?难道系统允许某些对象只实现属性或只实现行为吗?

书中同章节关于IUserManager的例子,change方法拆分的如此细致,如果要同时修改地址和电话两个属性的话怎么办?当然,我也不是说public void changeUser(IUserBO userBO, int type, String...changeOptions)这样好,只是就行为的粒度有些疑问,希望LZ解答,谢谢


能读这么细,说明你很好学。 如果设计都只遵循一个原则的话,那都是极端的,而且也不现实的,比如就这个单一职责原则吧,它要求一个类只实现一个职责,这是类的特质,至于属性和行为只是用来描述职责的,因此并这个原则没有说明一个类只有属性或者只有行为。呵呵,当然了,在这本书我也说了,“职责”是没有度量的标志,不像一斤油、一米长等等可以度量的标准,电话那个例子就是个很好的说明。

至于说IUserManager这个例子,只是强调方法的单一职责,你说的同时修改地址和电话两个属性,可以认为是一个职责,就需要新增加一个方法。——真是的项目开发我们不会这么傻,这也是单一职责原则“hard to see"的原因。
0 请登录后投票
   发表时间:2010-03-19  
myclover 写道
谢谢哈,太牛了!


谢谢!
0 请登录后投票
   发表时间:2010-03-19  
andyu2008 写道
有点浅,有些字面解释的味道


呵呵,现在提供的那个电子版只能算上市草稿的草稿,出版的书作了很多深入探讨。
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics