![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
XuTianXiang_JIANGSU
这个作者很懒,什么都没留下…
展开
-
大话设计模式学习篇--简单工厂模式
1 以一个计算器例子引入将数据的输入和计算(加减乘除等)都写入主函数体内,代码难以得到复用。2 业务封装将业务逻辑(计算逻辑)与界面输入分隔开,将业务逻辑独立到类当中。3 业务的继承与多态在第二部分,计算逻辑被独立在一个类当中,实现了封装,但这还远远不够。现实情况下,业务逻辑通常会发生变化,如果整体的业务逻辑均放在一个类下,那么业务的修改将面临很多风险。这个时候,可采用继承和原创 2015-11-22 22:02:38 · 434 阅读 · 0 评论 -
大话设计模式学习篇--策略模式
1 以做一个商场收银软件为例引入基于单价和商品数量进行收费。程序写死在主函数体内。2 增加打折、满减活动最简单的做法,是直接在主函数体内增加打折、满减的类型判断,并针对不同的类型进行不同的处理。很明显,这种做法很不合理,首先,这意味着:每增加一次新的打折或满减项目,都需在主函数的switch判断分支下增加新的程序,其次,日后商场可能会新增其他类型的活动,这也将使得程序的维护越来越难原创 2015-11-23 23:24:46 · 471 阅读 · 0 评论 -
cocos2d-x俄罗斯方块--基于简单工厂的程序重构
1 前言前些天看了一个Cocos2D写的俄罗斯方块代码(下载网址为:http://www.okbase.net/file/item/27944),代码逻辑很清晰。2 讨论俄罗斯方块游戏逻辑很简单(其实细节也很多),主要包含五个部分:下移、左移、右移、形状变换(上移)以及消行。于是,该代码的结构为:这么写存在什么问题?举个例子,如果此时,玩家需要新增或自定义一些方块的样式,并将其原创 2015-11-26 21:32:39 · 3395 阅读 · 0 评论