一种客户端框架的系统运行方法技术方案

技术编号:24572856 阅读:26 留言:0更新日期:2020-06-20 23:58
本发明专利技术公开了一种客户端框架的系统运行方法,提高了开发速度,提升了扩展性,提高了测试的方便程度。其技术方案为:客户端框架立足于业务系统开发,从整体过程到具体功能,都做了标准化处理并提供了对应的技术手段。总的来说,本发明专利技术通过标准化的项目模板和Visual Studio插件,减少手工录入重复的代码,从而得以实现快速开发;本发明专利技术实现框架提供的接口或自定义新的接口,并由框架自动完成加载,从而易于扩展。本发明专利技术支持对主要的业务功能进行单元测试,降低手工测试的比例,方便测试。

A system running method of Client Framework

【技术实现步骤摘要】
一种客户端框架的系统运行方法
本专利技术涉及客户端开发的技术,具体涉及客户端框架的系统运行方法。
技术介绍
目前在客户端开发中,比较普遍地采用MVC(Model-View-Controller,模型-视图-控制器)模式,或它的一些变种,如:MVVM(Model-View-ViewModel,模型-视图-视图模型)、MVP(Model-View-Presenter,模型-视图-展示器),强制性地将应用程序的输入、处理和输出等分开,达到解耦的目的。以MVC为例:Model,表示数据及相关的业务规则,其与具体的数据格式无关,从而能够为多个视图提供数据,减少了代码的重复性;View,表示能被用户看到并与之交互的界面,具有很强的多样性,如适应手机屏幕和电脑屏幕的视图就存在较大的差异;Controller,接受用户的输入并调用模型和视图去完成用户的需求,本身不输出任何东西和做任何处理。目前市面上常见的如:Structs、AspNet、Vue等都是比较成熟的MVC类的框架,在.NET平台上WPF(WindowsPresentationFramework)方面,也有一些比较好的框架,如Prism等。这些框架有一个共同的特点就是为了保证通用性,普遍比较偏向底层,也就意味着在具体的业务开发时,需要做比较多的定制(二次开发),这样降低了开发速度,而且可扩展性不够好。
技术实现思路
以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。本专利技术的目的在于解决上述问题,提供了一种客户端框架的系统运行方法,提高了开发速度,提升了扩展性,提高了测试的方便程度。本专利技术的技术方案为:本专利技术揭示了一种客户端框架的系统运行方法,方法包括:步骤1:客户端框架执行初始化操作;步骤2:客户端框架启动主窗体;步骤3:客户端框架实现认证登录操作;步骤4:客户端框架加载客户端界面的插件;步骤5:客户端框架基于业务组件执行用户的业务操作;步骤6:客户端框架实现退出系统的操作。根据本专利技术的客户端框架的系统运行方法的一实施例,步骤1的初始化操作包括但不限于加载系统配置、加载界面主题,客户端框架是对所有程序集进行扫描并执行自动组合,然后依次调用系统中所有实现MEF框架中的ISystemInitialization接口的实例,执行初始化操作。根据本专利技术的客户端框架的系统运行方法的一实施例,步骤2中客户端框架调用实现MEF框架中的IMainFrame接口的实例中优先级最高者,创建主窗体并启动。根据本专利技术的客户端框架的系统运行方法的一实施例,步骤3中客户端框架调用实现MEF框架中的ILoginService接口的实例中优先级最高者,完成认证登录过程。根据本专利技术的客户端框架的系统运行方法的一实施例,步骤4中客户端框架依次调用所有实现MEF框架中的IFramePlugin接口的实例,完成主窗体的加载。根据本专利技术的客户端框架的系统运行方法的一实施例,步骤5中的业务组件是组件-模型-视图-命令模式,其中,组件表示业务功能的入口、模型表示业务功能的数据模型、视图表示业务功能的用户界面,命令模式表示业务功能的用户操作所对应的业务逻辑。根据本专利技术的客户端框架的系统运行方法的一实施例,每个命令模式代表一个功能点,通过一组命令模式标识一个业务组件提供的功能列表以明确其业务范围;命令模式进行细粒度的控制;模型和命令模式通过单独初始化进行单元测试;命令模式作为模型的属性绑定到视图上。根据本专利技术的客户端框架的系统运行方法的一实施例,步骤6中客户端框架依次调用所有实现MEF框架中的ISystemFinalization接口的实例,执行包括状态保存和资源清理在内的退出工作。本专利技术对比现有技术有如下的有益效果:本专利技术的客户端框架立足于业务系统开发,从整体过程到具体功能,都做了标准化处理并提供了对应的技术手段。总的来说,本专利技术通过标准化的项目模板和VisualStudio插件,减少手工录入重复的代码,从而得以实现快速开发;本专利技术实现框架提供的接口或自定义新的接口,并由框架自动完成加载,从而易于扩展。本专利技术支持对主要的业务功能进行单元测试,降低手工测试的比例,方便测试。详细而言,本专利技术在系统运行过程和业务组件构成两个方面具备创新点:1.系统运行过程本专利技术定义了一般性的系统运行过程,并针对每个阶段定义了相应的扩展点(IComposition接口),标准化流程的同时也为自定义预留了机会。在开发业务系统时,不必再费心思考系统的启动过程,配合框架提供的项目模板和VisualStudio插件,可快速进行业务功能开发,从而提高交付速度。2.业务组件构成本案提出MMVC(Module-Model-View-Command,组件-模型-视图-命令)模式,创造性地将Command提高到与Model同等的级别,从而为明确功能范围、做细粒度控制、绑定用户操作等打下良好的基础。附图说明在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本专利技术的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。图1示出了本专利技术的客户端框架的系统运行方法的一实施例的流程示意图。图2示出了图1所示的方法实施例中涉及到的业务组件构成的示意图。具体实施方式以下结合附图和具体实施例对本专利技术作详细描述。注意,以下结合附图和具体实施例描述的诸方面仅是示例性的,而不应被理解为对本专利技术的保护范围进行任何限制。图1示出了本专利技术的客户端框架的系统运行方法的一实施例的流程。请参见图1,本实施例的方法的实施步骤详述如下。步骤1:初始化处理。客户端框架完成对业务系统中所有程序集的扫描并执行自动组合,然后依次调用系统中所有实现ISystemInitialization接口的实例,对系统执行初始化操作,如:加载系统配置、加载界面主题等。在开发业务系统时,可以按需增加实现此接口的类型,以完成更多初始化操作。IComposition是本专利技术的MEF(ManagedExtensibilityFramework,是微软提供的DI方式的实现者)框架中使用的最基础的接口,DI是指DependencyInjection,依赖注入,是IOC(InversionOfControl,控制反转,是面向对象编程中的一种设计原则,用来降低代码之间的耦合度)的一种实现方式。本实施例中的ISystemInitialization、ISystemFinalization等接口都继承自IComposition。通过这个接口,MEF框本文档来自技高网...

【技术保护点】
1.一种客户端框架的系统运行方法,其特征在于,方法包括:/n步骤1:客户端框架执行初始化操作;/n步骤2:客户端框架启动主窗体;/n步骤3:客户端框架实现认证登录操作;/n步骤4:客户端框架加载客户端界面的插件;/n步骤5:客户端框架基于业务组件执行用户的业务操作;/n步骤6:客户端框架实现退出系统的操作。/n

【技术特征摘要】
1.一种客户端框架的系统运行方法,其特征在于,方法包括:
步骤1:客户端框架执行初始化操作;
步骤2:客户端框架启动主窗体;
步骤3:客户端框架实现认证登录操作;
步骤4:客户端框架加载客户端界面的插件;
步骤5:客户端框架基于业务组件执行用户的业务操作;
步骤6:客户端框架实现退出系统的操作。


2.根据权利要求1所述的客户端框架的系统运行方法,其特征在于,步骤1的初始化操作包括但不限于加载系统配置、加载界面主题,客户端框架是对所有程序集进行扫描并执行自动组合,然后依次调用系统中所有实现MEF框架中的ISystemInitialization接口的实例,执行初始化操作。


3.根据权利要求1所述的客户端框架的系统运行方法,其特征在于,步骤2中客户端框架调用实现MEF框架中的IMainFrame接口的实例中优先级最高者,创建主窗体并启动。


4.根据权利要求1所述的客户端框架的系统运行方法,其特征在于,步骤3中客户端框架调用实现MEF框架中的ILoginService接口的实例中优先...

【专利技术属性】
技术研发人员:陈勇江
申请(专利权)人:上海金融期货信息技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1