- @川山甲
不需要if,你只管注册就行了。
就算注册了用不到也无所谓。
当然你也可以只注册你需要的。
}
这样的话,以后新增一个类型,只需使用Ioc容器注册一下就可以了。getRank不用做任何修改。...
没错啊,是对修改是闭合的,但你现在Ranking类的getRank方法对修改就不是闭合的了- @川山甲
修改之后还是看不出抽象几个类的好处,其实我直接抽取成方法也可以达到你现在的效果。
主要有一个问题,你还没有解决。
4、它违反了开放闭合原则,因为每当添加新类型时,必须修改getRank方法。
所以你这样做,并不比抽取方法有好在哪里 - 我知道Replace Conditional with Polymorphism 的好处。
我只是想说你举的例子不对,让初学者误认为这个方法不但没什么效果,反而是多此一举。
因为按文章的代码修改之后,还是存在以下坏味道:
1、当视频有新类型的时候,它会变得更长。
2、它明显做了不止一件事。
3、它违反了单一权责原则,因为它有好几个修改它的理由。
4、它违反了开放闭合原则,因为每当添加新类型时,必须修改它。 - Replace Conditional with Polymorphism 的这个例子举得不太好,没看出修改后的代码比原来的好在哪里?
- 首先,按我自己的理解,简单说一下TDD 和 BDD 有何区别?首先是思路上的区别, 传统的 TDD 关注的是接口是否被正确地实现了, 所以通常每个接口有一个对应的单元测试类。而BDD是通过故事模板和场...
- 首先,按我自己的理解,简单说一下TDD 和 BDD 有何区别?首先是思路上的区别, 传统的 TDD 关注的是接口是否被正确地实现了, 所以通常每个接口有一个对应的单元测试类。而BDD是通过故事模板和场...
- 首先,按我自己的理解,简单说一下TDD 和 BDD 有何区别?首先是思路上的区别, 传统的 TDD 关注的是接口是否被正确地实现了, 所以通常每个接口有一个对应的单元测试类。而BDD是通过故事模板和场...
- 首先,按我自己的理解,简单说一下TDD 和 BDD 有何区别?首先是思路上的区别, 传统的 TDD 关注的是接口是否被正确地实现了, 所以通常每个接口有一个对应的单元测试类。而BDD是通过故事模板和场...
- 首先,按我自己的理解,简单说一下TDD 和 BDD 有何区别?首先是思路上的区别, 传统的 TDD 关注的是接口是否被正确地实现了, 所以通常每个接口有一个对应的单元测试类。而BDD是通过故事模板和场...
- 首先,按我自己的理解,简单说一下TDD 和 BDD 有何区别?首先是思路上的区别, 传统的 TDD 关注的是接口是否被正确地实现了, 所以通常每个接口有一个对应的单元测试类。而BDD是通过故事模板和场...
- @天真已渐消退
上http://suchuanyi.sinaapp.com上看,上边有最新版本 - 不会吧,我昨天试过都还正常的。
你点保存了吗》 - @cdboy
哪个api? - 这个不能说是一个真正意义上的ORM,只是个数据访问组件而已。
- @ByCai
其实原理很简单的,代码也很简单。。。 - @renyu
谢谢。。 - 呵呵,这是私服版的ifttt。
其实就用了几个最基本的API而已
发微博,发图片微博,发评论,获取自己发的微博 - @翁玉礼
现在主要做web应用。。。 - @Mr_handy
呵呵,有兴趣可以一起完善它 - 我也是在郑州读的大学。。。
帮顶。。。 - 多谢木鱼兄,手动需该项目文件还真的没试过
土豆烤肉:毅哥,我顶你 哈哈,你怎么知道是我。。。simly: 对,是2010版的,我已经没有2008了,所以。。。
2010版的呀
我用的2008打不开
郁闷了。。
你看看有没有人同时装有2010和2008的,帮你搞个2008版的- @Virus-BeautyCode
呵呵,其实是可以的,只不过PC遥控器做不到而已。 iTech:能开机就好了 开机目前有软件可以做到,不过要主板支持。
具体请看:http://suchuanyi.sinaapp.com/?p=80- @yanwei
感谢。。 - @天行健 自强不息
多谢支持。。。










