策略模式在软件设计中的应用
时间:2019-08-17 17:45 来源:毕业论文 作者:毕业论文 点击:次
摘要:本文介绍了策略模式的一些基础概念,还有运用到的两门主要的语言C#与Java的基础概念与.net平台的相关知识。重点放在了详解策略模式的实际应用上,具体举例了模拟鸭子游戏的两种不同的设计想法。第一种设计方法是在继承的基础上展开,第二种设计方法运用到了策略模式,整个设计显然更优秀,是整个游戏系统更加容易文护,也变得更灵活。以此归纳出了策略模式强大的地方,优点显而易见。38589 毕业论文关键词:策略模式;C#;.net;应用 本科生毕业设计(论文) 1 1绪论 3 2策略模式概念 3 3 策略模式的原理 3 3.1策略模式的定义 3 3.2策略模式的组成 4 3.3策略模式的概念 4 3.4策略模式的优缺点 5 3.5策略模式的运用意义 6 3.6适合使用策略模式的情景 6 4 开发工具及应用实现 6 4.1开发工具介绍 6 4.1.1 C#语言的 概念 6 4.1.2 .net平台 8 4.1.3 Java的概念 9 4.2应用实现 11 4.2.1 踢足球 11 3.2.2 模拟鸭子游戏 15 4 结论 22 1 绪论 策略类的布局结构界说了一个算法或行为族。策略模式供应了办理与之有关的的算法族的方式。相同的代码可以被防止,只需得当地运用继承,把public的代码放到father类里面。 策略模式使继承关系之间的变更成为了可能,继承能够在策略模式下对各种算法和行为处置。在没有策略模式的帮助下,这些需要用到算法和行为类的子类,可能会存在于它们本身的类中,不同的子类会呈现不一样的算法和行为。这样会造成的结果是,调用这些算法和行为的会和它们自身混为一谈。确认用什么算法或者选择什么行为的逻辑会与算法或行为的逻辑夹杂在一起,所以不可能实现单独演变。继承让改变算法或者是行为的灵活性变差,动态的改变变得难以成立。 策略模式的恰当利用,能让多重条件转移语句得到避免。这种语句非常不方便文护,因为它会造成算法与逻辑的混乱。这种把所有算法放在一个相同的语句中的方法,是非常不可取的,它比使用继承的办法还要原始和落后。 2策略模式概念 在生活中,在面对某项任务或某个问题的时候,我们经常需要对使用什么方法做出抉择,这种情况对于软件开发这个领域来说,也是习以为常。我们现在已经清楚地知道了,短期的超近路式的方法并不能根本解决问题,还可能在长期上导致问题的加剧。 软件开发体现在这样的场景中,为了实现某一个功能,算法在环境和前提条件有差别的情况下应该不同,策略也是如此。其中一种我们经常使用的方式便是硬编码。相同的一个类里面,如果需要要许多种查找算法的存在,把所有的代码放进这个类里,一个类里面做到许多种方法的并存,每一个具体详细的查找算法,都是与每一个特定额方法相互对应。另外一个方法是,在同一个方法里面把所有的代码都写入,可以用到一些条件判断语句来进行选择。这两种实现方法都可被称为硬编码,在别的新的算法要求被增添时,源代码相应需要做出改变;替换查找算法,客户端的代码也要有相应的修正。大批的查找算法封装在这个算法中,该类代码又比较难处理,文护这个系统会变得很困难。把这些策略放在客户端的举动会导致什么结果呢?客户端程序变得庞大且难以文护,显然这是不可取的。 (责任编辑:qin) |