白话插件框架原理

白话插件框架原理

ID:21099682

大小:1.79 MB

页数:28页

时间:2018-10-19

白话插件框架原理_第1页
白话插件框架原理_第2页
白话插件框架原理_第3页
白话插件框架原理_第4页
白话插件框架原理_第5页
资源描述:

《白话插件框架原理》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方白话插件框架原理本文将用尽可能简单的文字来描述插件框架原理。很多人以为插件化很复杂,所以就一直将这类框架阻挡在门外。实际上,在我们的实践过程中,从框架的使用角度来看,它非常简单,我们团队里面非正规院校毕业的女生也可以来实际使用。如果说插件框架难的地方,我反倒觉得克服人的天然惰性更加困难。我们不能习惯于墨守成规,日复一日年复一年,按照相同的模式来开发,将自己打造成一部“编码机器”,成为没有

2、价值的“程序猿/媛”。使用插件框架,没有多少技术难点,不过需要我们提升我们的软件开发思想,改变现有开发方式。 1插件框架本质 在.NET平台,一个程序是由“程序集+资源”构成的。程序集是由我们开发的一个个的类。这些类可能是通用功能的辅助类、数据访问类、业务逻辑类,也可以是WinForm应用的窗体类或者Web应用的Web窗体类。以传统模式开发的程序,一般情况下,不管是我们开发的程序集,还是引用的第三方程序集,它们都在应用程序的bin目录下,如下所示。----------专业最好文档,专业为你服务,

3、急你所急,供你所需-------------文档下载最佳的地方----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方 插件化开发方式与传统方式不同在于,它会把程序集按照一定结构进行组织,比如下面这个程序是基于插件化方式来构建的,不同功能的程序集则组织到Plugins目录下,如下所示。 此时,bin目录则仅仅包含几个很通用的程序集。----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方-

4、---------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方 在Plugins目录下,则按照功能进行分组,每一个目录为一个插件,它实现一组功能。 下面我们来看其中一个插件——AlarmManagementPlugin插件的目录结构,如下所示,你会发现,插件拥有自己独立的bin目录,在自己的bin目录下,放置着这个功能涉及的程序集。----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方-----

5、-----专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方 在传统开发方式中,放在bin目录下的程序集会由.NET类加载器按需去加载,但是当我们要实现插件化方式开发时,需要依赖于插件框架实现从不同的插件目录中加载程序集。因此,插件框架本质上是扩展了.NET类加载器的功能,使其能够从插件目录中加载程序集。 2进一步看插件框架 插件化开发方式不仅仅从程序集的组织方式上发上了变化,更重要的是,在功能的组织和实现也发生了变化。我们用一个非常典型的分层架构看看二者

6、区别。 ----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方下图是一个分层架构的应用程序,由表示层、业务层、数据层等组成,每一个层次都有相对应的功能组成,在表示层,我们一般是构建了一个主界面,然后由不同的开发者在主界面上直接放置上菜单及菜单点击事件的响应,同理,其它层次也类似,不同开发者根据需要实现的功能来添加不同的代码。 在这种

7、模式下,所有程序员开发的不同层次的功能代码一般都在同一个程序集里面,在开发过程中,团队需要不停的进行合并,并执行集成测试。下图是大家都很熟悉的PetShop的项目结构。这里面BLL程序集(项目)放置的是业务逻辑层的代码,Web程序集(项目)放置的是表示层代码,DALFactory及涉及的其它DAL程序集则是数据访问层的相关代码。----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方----------专业最好文档,专业为你服务,急你所急,供

8、你所需-------------文档下载最佳的地方 下面我们来看看一个功能所涉及的程序集。这意味着,所有程序员都需要获取到项目的代码,然后遵循规则,在各个项目中添加自己的代码,再将这些代码合并起来,最后完整编译再交付软件系统。----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方----------专业最好文档,专业为你服务,急你所急,供你所需-------------文档下载最佳的地方 现在我们来看看使用插件化开发方式的组织方式,如下图所

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。