插件式框架设计的一些感悟—附c#与arcengine学习资料

来源:互联网 发布:php odbc 中文乱码 编辑:程序博客网 时间:2024/06/05 23:05

          众所周知,c#和arcengine 都为我们提供了实现各种功能的控件。对于某些简单或复杂的功能,都能通过控件的拖拽,控件间的组合以及少许的代码就能轻松的实现。因此,我们可以相对容易的开发出针对某一实际应用的系统,为此,很多人以及一些公司都会重复的针对某一应用开发新的系统,对于系统间某些相似的功能,也仅仅是复制那些功能代码,未能在整体上利用先前系统的成果,造成了一些重复编码。还有,重新开发新的系统,新的架构,新的人员协调,又是一个复杂艰难的过程。这些不足之处在很大程度上限制了系统的研发周期,对公司和个人来说无异于是一种浪费。而插件式的框架开发模式,可以在很大的程度上解决这些问题。

       插件式程序开发模式具有以下优点:

      1,极大的提高代码的重用性。为了提高代码的重用性,我们从函数库,类库,设计模式一路走来,一步步提高了系统的开发效率。而框架的开发模式无疑是现在代码重用性最高的开发方式了。当开发出某一个完整的主框架时,就已经包含了绝大多数插件所共用的函数,更重要的是主框架本身。我们所建立的主框架不仅仅是为了某单一项目而临时搭建的,它是可应用于某一类型项目的。我们只需要开发针对某一项目的所对应插件,而不用在重新搭建一个新的框架。打个比方说:主框架就如同一颗大树的树根和主干,你要想让它变成什么树,可在主干上加上对应的树枝,树叶,果实等。我们就省去了小树变成大树的麻烦,而这在惜时如金的时代无疑是非常重要的。

       2,插件开发的灵活性。插件的开发方式让程序从纷繁复杂的系统中解脱出来 。开发出一个完整的系统,我们必须分清各个功能之间的协调与通信规则,而程序员编程时也得时时刻刻牢记这些条条框框,加大了程序员的负担,也很容产生错误。而插件式开发的每个插件都有其一定的独立机制。插件通过消息的传递方式获取或发送该插件所需或要传递的数据,因此,每个插件的开发只需考虑自己本身的功能是否实现以,而且插件的动态加载方式使得我们可以根据需求的变化开发出对应的插件,具有别与其它开发方式的灵活性。

       3,插件开发的可扩展性。社会的复杂性在于它的的变化性。项目应用也会随着需求变化而变化,这导致了一个新的系统在短时间就会遭遇被淘汰的危险。插件的开发模式可采用动态加载方式,在不卸载主程序的情况下添加上我们所需的插件,因此我们可以依据实际需求,开发出对应的插件,拓展其实际功能。再者,我们还能用新的插件来替换过时或过多的功能插件,从而更新系统,来达到满足不断变化着的需求。

       4,系统的定制性。主框架中具有管理各个插件功能,对于不同级别的需求,我们可以有选择性的添加各种插件,定制出各个级别的系统,既能满足不同程度的需求,还能拓展系统的应用面。

      时间不是很多了,下次继续。我手上有不少AE+C# 的学习资料,有人想要的话可一留下邮箱,我发给你们。共同学习.....

原创粉丝点击