多态性结合反射工厂模式以提高NET应用程序可维护性的研究.pdfVIP

多态性结合反射工厂模式以提高NET应用程序可维护性的研究.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多态性结合反射工厂模式以提高NET应用程序可维护性的研究.pdf

·款字技术· 多态性结合反射工厂模式以提高.NET应用程序可维护性的研究 李礁 (绵阳职业技术学院计算机科学系 I舀JII绵阳 621000) 【摘 要1随着软件工程的日臻完善,软件开发有了一套完整的科学方法,从而提高了软件生产率。降低了开发成本。需求分析作 为其中的重要阶段,本着完全的体现和把握用户目前的需求,以及将来可能变动的需求,是软件产品成功的命脉。而把可能变动的 需求体现在软件设计过程中,是提高软件产品可维护性的重点和难点,当然由此带来软件产品维护成本的降低、用户满意度提高自 然是不言而喻。通过.NET的反射技术和反射工厂模式,将数据库存储的具体名称实例化,井采用面向对象多态性,在应用程序中 不涉及具体子类对象的构造,予类对象统一由反射工厂生成,并受抽象父类引用变量控制。由此,整个应用程序与具体子类无关, 未来应用程序升级和维护变得更加容易。下面以一个在线考试系统的开发为例,研究多态性结合反射工厂模式提高.NET应用程序 可维护性的方法。 【关键词】反射(reflection)反射工厂 多态性 面向对象 可维护性 【中图分类号]TP 【文献标识码1A 【文章编号】1007-9416(2009)01-0024-02 1问题的提出 人员往往会利用运行时多态性的设计方 { 在各种在线考试系统中,导致需求变 案,抽象出各种具体题型类的共同特征, 动的因素主要是:系统在完成后,甚至在 得到题型类的抽象父类,并在外部调用过 } 正常运行很长时间后,客户可能在维护期 程中,利用运行时多态性特征,不与具体 return文珊l 提出增加题型的要求,而这些题犁是在软 子类联系。这在一定程度上提高了应用程 } 件设计时无法确定的。如何在软件架构设 序的可维护性,在线考试系统中髓型类继 总结起来图一的设计方式有以下优点: 计时给这样的变化留F足够的余地,是减 承关系如F图: (5)结构清晰.分工明确,阅卷功能 少维护难度和维护成本的基础。 Subject类作为整个设计的核心,它是被分解到了具体的题型类; 2多态性的应用 所有试题类的抽象父类,并作为试卷类的 (6)在一定程度上提高了系统的可维 。多态性”一词最早用于生物学,指同 故题集合元素类型,在整个设计中发挥着 护性,客户提出增加题型甓求时,开发者 一种族的生物体具有相同的特性。在面向 举足轻霞的作用。第一,ExamPaper类包增加题型类,并实现其Check方法l 3简单工厂模式 对象理论中。多态性的定义是:同一操作 含的Subject集合,可以容纳各种Subject子 作用于不同的类的实侧,将产生不同的执 类对象,这符合试卷的多元题型结构;第 在GOFl的设计模式中并没有简单工 行结果,即不同类的对象收到相同的消息 二,由于多态性的存在,ExamPaper类实厂,而是将其作为工厂方法的一个特例加以 解释,可以这样理解,简单工厂是参数化的 时,得到不同的结果。多态性包含编译时 现阅卷函敬CheckExamPaper非常简单, 的多态性和运行时的多态性两大类。 可以分为如下步骤: 工厂方法。采用简单工厂的优点是可以使用 (1)编译时的多态性:编译时的多态 (3)遍历subs集合, 户根据参数获得对应的类实例, 性是通过重载来实现的。对于非虚的成员 (4)在每一次循环中调用集台元素的 避免了直接实例化类,降低了耦合性- 来说,系统在编译时,根据传递的参

文档评论(0)

aiwendang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档