资源描述:
《08计科1班18号罗会枫《设计模式》开题报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、华南农业大学珠江学院《设计模式》课题设计开题报告专业:____计算机科学与技术_______班级:___08计算机科学与技术01___学号:__200830400118____________姓名:___罗会枫__________________导师:___张基温__________________题目:对观察者模式和代理模式的设计开题日期:2011年5月27日6目录1.对《设计模式》的总体认识或意义31.1总体认识31.1.1创建型模式31.1.2结构型模式31.1.3行为模式31.2实际开发中的意义41.2.1对于个人的意义41.2.2对软件或系统的
2、实际意义42.观察者模式42.1对观察者模式的认识42.1.1定义42.1.2认识52.1.3适用性52.1.4对本模式的构思53.代理模式53.1对代理模式的认识53.1.1定义53.1.2认识53.1.3适用性63.1.4对本模式的构思64.工作进度安排661.对《设计模式》的总体认识或意义本学期第三周开始接触《设计模式》至今,已有十一周的时间。在这十一周的时间里我本人断断续续的拿起《设计模式》的书籍学习其中的23中设计模式。虽然这次学习断断续续,但是对《设计模式》的认识还是蛮深的,也明白了其用于系统或软件开发中的意义。1.1总体认识在《设计模式》中
3、“设计面向对象软件比较困难,而设计可复用的面向对象软件就更加困难。”给我很深的印象。软件的开发使用面向对象不仅要考虑到整个软件框架中成员的如何将他们分类,而且还要考虑到类之间的联系;当使用可复用的面向对象编程的时候,又要考虑到可复用性和可扩展性、可维护性等。其实,不管是我们开发软件还是系统中要这么考虑,就在平时的练习中考虑到这些问题时,设计时也会遇到这样那样的困难。当然如果平时都没有这么个习惯,那么开发软件或系统时再考虑,那么所遇到的困难就更重。只有在平时的学习中,养成良好的设计习惯,再往后的应用中使用面向对象这个思想才能游刃有余。设计模式包括创建型模式
4、、结构型模式和行为型模式三大类型。1.1.1创建型模式创建型模式有AbstractFactory、Builder、FactoryMethod、Prototype、Singleton五种模式。创建型模式抽象了实例化过程。一个类创建型模式使用继承改变被实例化的类,二一个对象创建型模式将实例化委托给另一个对象。随着现代软件开发越来越依赖于对象复合而不是类继承,创建型模式变得更为重要。对创建型模式的应用主要考虑两个方面。第一,它们都将关于该系统使用哪些具体的类的信息封装起来。第二,它们隐藏了这些类的实例是如何被创建和放在一起的。整个系统关于这些对象所知道的是由抽
5、象类所定义的接口。1.1.2结构型模式结构型模式涉及到如何组合类和对象以获得更大的结构。结构型类模式采用继承机制来组合接口或实现。而结构型对象模式不是对接口和实现进行组合,而是描述了如何对一些对象进行组合,从而实现新功能的一些方法。结构型模式主要有Adapter,Bridge,Composite,Decorator,Facade,Flyweight,Proxy这八中模式。1.1.3行为模式行为模式有以下十一种,包括Interpreter(解释器),TemplateMethod(模板方法),ChainofResponsibility(职责链),Comman
6、d(命令),Iterator(迭代器),Mediator(中介者),Memento(备忘录),Observer(观察者),State(状态),Strategy(策略),Visitor(访问者)。6行为模式涉及到算法和对象间职责的分配。行为模式不仅描述对象或类的模式,还描述它们之间的同学模式。行为类模式使用继承机制在类间分派行为。代表是TemplateMethod(模板方法)和Interpreter(解释器)。行为对象模式适用对象复合而不是继承。一些行为对象模式描述了一组对等的对象怎样相互协作以完成其中任一个对象都无法单独完成的任务。Mediator(中介
7、者)在对等对象间引入一个mediator对象以避免这种情况的出现。mediator提供了松耦合所需的间接性。ChainofResponsibility(职责链)提供更松的耦合。Observer(观察者)模式定义了并支持对象间的依赖关系这23种模式中个人认为最难理解的是访问者、备忘录、适配器、外观、迭代器、观察者;而工厂模式几乎在每一个设计模式中都会现身其中,所以工厂模式是最基本的设计模式,也是所有设计模式的基础。在实际中,工厂方法模式、观察者模式、外观模式、适配器、策略模式又是最经常使用,对软件或系统的开发是相对最好的模式。设计模式的学习是“冰冻三尺非一
8、日之寒”只有经常使用你才能更好的掌握。当然这些设计模式也并不是完美的,每个都有自