- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C#插件式程序开发,c语言,cf,c站,c罗,c语言入门,c语言编程软件,c
Jene Marlin jenemarlin@ 2010-8-2 提起插件式程序,我们首先想起的就是firbox.用过firebox浏览器的人都知道它是一个插件式程序。当一个功能需要时,完全可以从网上下载一个插件后,重启后,就能使用。这个功能给我们带来了许多的方便之处。这就是插件式程序带来的好处。 插件的本质在于不修改程序主体(平台)的情况下对软件功能进行扩展与加强,当插件的接口公开后,任何公司或个人都可以制作自己的插件来解决一些操作上的不便或增加新的功能,也就是实现真正意义上的“即插即用”软件开发。(先谢谢网络共享的朋友 ?)。 平台+插件软件结构是将一个待开发的目标软件分为两部分, 一部分为程序的主体或主框架,可定义为平台,这是预先编译后的程序 。 另一部分为功能扩展或补充模块,可定义为插件。 这个就是后来要进行安装的插件程序。 ?假设你设计的程序已经部署到用户的计算机上,并且能够正常运行了。但是有一天,用户打来了电话——他们要求增加新的功能。确定了用户的需求后,你竟然发现原有的软件架构已经无法胜任新增任务的需求——你需要重新设计这个应用了!但问题是,就算你又用了一个开发周期完成了用户需要的应用,却不能保证用户的需求不会再次变更。也就是说,需求蔓延的可能性依然存在。因此,这种情况下插件构架更能显示出它的优越性。 可以这么说,用它可以带来方便的地方 。而且开发它,也很简单。而且这样做主程序根本 就不需要改动。需要插件时,拿来就能用。插件更新,也只要更新这个插件就行。 从程序开发角度来说,一般都是先要开发主程序,决定那些功能由主程序来完成,然后再建立接口,声明接口的内容,这些内容决定着插件的扩展的功能,及方向的。这些都是由主程序开发者预先准备好的。 插件开发者,从主程序开发者那里得到接口的内容,并书写继承这些接口的类,来完成具体的功能。 一个程序能实现的功能,基本上插件都能实现。 本节,我将通过一个最简单的实例来说明插件式程序的开发。希望能快速的带领刚学习插件式程序开发的朋友们快速的学习及进步。 本例主要介绍插件式程序的开发过程。 这个插件式程序的功能。 在主程序加载时,自动的加载插件中功能,并能完成接口中定义的功能 。 这个例子也是最简单的插件程序,说实话,没有什么意义,但是我写出来,主要就是介绍这个插件式程序开发的思想 。这对一个想学习插件式程序开发朋友会有一定的帮助。 插件 主程序 接口 首先我们要知道: 1.已经存在一个平台,即一个主程序。 2.而我们要在这个主程序进行功能扩展。就要用到插件。 但是这个插件怎样才能被主程序使用呢?这个就是我们要进行解决的问题! 我告诉大家要用到接口这个功能。你只要记住就好了。当然你也可以用其它的功能, 这里我就不多说了。 有基础的朋友都知道,接口光是进行声明,并不进行代码的具体的实现。这为我们提供了一个最大的方便。请看下图。从下图中,我们可以看出,接口连接着主程序与插件,并负责着它们的信息及功能的联系。当然这个接口是唯一的。它即被插件使用,也要被主程序使用。所以,我们的第一步就是要先建立接口的DLL文件。 为什么生成DLL文件? 只有生成 DLL文件后,才能被主程序及插件程序引用。 怎样生成DLL文件? 生成接口的DLL文件,同生成类的DLL文件一样。 在VS中,打开[新建项目]—[类库],输入文件名后,保存即可, 在做完接口的声明后,右键单击[解决方案资源管理器],再次单击生成即可。 using System; using System.Collections.Generic; using System.Text; namespace pluginsinterface { public interface inter { string show(); void a(); } } 为什么先开发主程序? 我们都知道,先有主程序,后才有插件。 主程序的开发原理是什么 ? 先要建立一个文件夹,在这个文件夹内放入插件,当主程序需要加载插件,就从这个文件夹内加载插件程序。 在这里,我们要用到System. Reflection这个命明空间。并利用它下面的Assembly类。并在解决方案管理器中,添加接口dll的引用。还要在命名空明处添加空间的引用。 下面贴出一个简单的插件管理的代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using plu
文档评论(0)