![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
NET
pubol
这个作者很懒,什么都没留下…
展开
-
Visual C# 插件构架实战(二)
二、设计过程 好了,现在我们准备把所有的核心代码都放在 CSPluginKernel 命名空间中。用VSIDE建立一个C#类库工程。在命名空间 CSPluginKernel 中开始我们的代码。 1. 接口设计 我们的程序编辑器会向插件开放正在编辑的文档对象。程序启动后,就枚举每一个插件并把它连接到主程序,同时传递主程序对象的接口。插件可以通过这个接口来请求主程序对象或访问主程序功能 。转载 2006-09-11 20:28:00 · 828 阅读 · 0 评论 -
Visual C# 插件构架实战(一)
一、引言 1. 问题的引入 假设你设计的程序已经部署到用户的计算机上,并且能够正常运行了。但是有一天,用户打来了电话——他们要求增加新的功能。确定了用户的需求后,你竟然发现原有的软件架构已经无法胜任新增任务的需求——你需要重新设计这个应用了!但问题是,就算你又用了一个开发周期完成了用户需要的应用,却不能保证用户的需求不会再次变更。也就是说,需求蔓延的可能性依然存在。因此,这种情况下插件构架更转载 2006-09-11 20:39:00 · 739 阅读 · 0 评论 -
Visual C# 插件构架实战(三)
2. 插件信息的存储与获取 一个插件需要有它的名称 、版本等信息。作为设计者的你,也一定要留下你的尊姓大名和个人网站等用来宣传自己。 C# 的新特性——属性, 就是一个很好的解决方案。因此我们定义一个从 System.Attribute 继承来的类 PluginInfoArrtibute : /// /// 用来指定一个插件的相关信息转载 2006-09-11 20:41:00 · 687 阅读 · 0 评论 -
在C#程序中实现插件架构
在.NET框架下的C#语言,和其他。NET语言一样提供了很多强大的特性和机制。其中一些是全新的,而有些则是从以前的语言和平台上照搬过来的。然而,这种巧妙的结合产生了一些有趣的方法可以用来解决我们的问题。这篇文章将讲述如何利用这些奇妙的特性,用插件(plug-ins)机制建立可扩展的解决方案。后面也将提供一个简要的例子,你甚至可以用这个东西来替换那些已经在很多系统中广泛使用的独立的程序。在一个系统中转载 2006-09-11 21:24:00 · 1429 阅读 · 0 评论