Source
virtualsoul
这个作者很懒,什么都没留下…
展开
-
[设计模式] 设计原则
前言:学习设计模式,不仅仅在OO语言中使用,还要考虑其在C语言中实施的方式, 打破语言和环境的藩篱。基本的设计原则包括:1. 封装变化2. 针对接口编程,而不是针对实现编程*封装变化的好处有:有利于实现代码的最小改动和最少编译有利于代码重构和优化例如《深入浅出设计模式》中,每种duck的行为细节各有不同,有的会飞,有的不会,发声也不尽相同,如果都放到duck类中,继承和重新实现的工作量很大。而且不是鸭子,也有能飞的。所以,按照封装变化原则,行为类应该独立于Duck类进行设计。Duck类可以委原创 2010-09-27 17:03:00 · 209 阅读 · 0 评论 -
[设计模式] 策略模式联想
<br /> 策略模式(Strategy), 定义了算法族, 分别封装起来, 让它们之间可以互相替换. 此模式<br />让算法的变化独立于是用算法的客户.<br /> 为什么取名策略模式?因为将Class需要使用的策略独立出来了。<br /> 在Duck例子中,我们将duck的行为独立出来,封装为一组策略,其实就用到了策略模式。<br /> 思考一下,身边还有哪些可以用策略模式来解决的呢?<br /> <br /> * Brew应用软件开发时,OEM层将很原创 2010-09-29 17:33:00 · 269 阅读 · 0 评论 -
史丰收速算口诀
乘數爲2時,口訣爲:滿五進1; 乘數爲3時,口訣爲:超3進1,超6進2; 乘數爲4時,口訣爲:滿25進1,滿50進2,滿75進3; 乘數爲5時,口訣爲:滿2進1,滿4進2,滿6進3,滿8進4; 乘數爲6時,口訣爲:超16進1,超3進2,滿5進3,超6進4,超83進5; 乘數爲7時,口訣爲:超142857進1,超285714進2,超428571進3,超571428進4,超714285進5,超857142進6; 乘數爲8時,口訣爲:滿125進1,滿25進2,滿375進3,滿5進4,滿625進5,滿7原创 2011-02-20 13:47:00 · 1308 阅读 · 1 评论