组件处理方法、系统、电子装置和存储介质与流程

未命名 08-07 阅读:98 评论:0


1.本技术涉及软件开发领域,特别是涉及组件处理方法、系统、电子装置和存储介质。


背景技术:

2.现代软件系统功能模块多,系统复杂,软件开发过程需要多个团队或者多个成员共同合作、协同开发才能完成。为了优化软件开发流程,提高工作效率,降低系统耦合度,这使得组件式开发框架势在必行。
3.相关技术中虽然实现了组件式开发,但根据现有组件式开发框架创建软件应用时,每一个组件模块均拥有各自独立的存储文件夹,存储文件夹中包括每个组件的对应的动态库、公共框架动态库、视图界面、公共前端静态资源文件。当应用软件包括多模块时,必须建立多个组件。随着应用模块的增加,站点文件总大小一直在增加。同时,在软件升级时,需要升级替换的组件文件夹以及替换步骤过多,不利于站点升级维护。
4.针对相关技术中存在的基于mvc组件式开发框架进行软件开发时,站点文件冗余、维护效率低的问题,目前还没有提出有效的解决方案。


技术实现要素:

5.在本实施例中提供了一种组件处理方法、系统、电子装置和存储介质,以解决相关技术中基于mvc组件式开发框架进行软件开发时,站点文件冗余、维护效率低的问题。
6.第一个方面,在本实施例中提供了一种组件处理方法,包括:
7.生成目标组件的组件工程,建立所述目标组件的程序集;
8.根据所述目标组件的程序集生成组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径;其中,
9.所述组件动态库位于主站点,所述主站点包括公共框架动态库、公共静态资源文件夹和公共视图文件夹,所述公共框架动态库包括运行所述目标组件所需的环境文件;
10.所述视图文件和所述第一静态资源文件均位于所述公共视图文件夹,所述视图文件引用所述第二静态资源文件的文件路径,所述第二静态资源文件存放于所述公共静态资源文件夹。
11.在其中的一些实施例中,建立所述目标组件的程序集,包括:
12.在所述组件工程中建立所述目标组件的视图、控制器和模型;
13.通过所述视图、所述控制器和所述模型实现所述目标组件的业务逻辑,生成所述目标组件的程序集。
14.在其中的一些实施例中,生成目标组件的组件工程,包括:
15.根据预设命名规则建立所述目标组件的组件工程;
16.设置所述目标组件的第一授权截止日期,其中,所述第一授权截止日期内的目标组件允许用户访问,所述第一授权截止日期外的组件工程禁止用户访问。
17.在其中的一些实施例中,在确定所述组件工程的授权截止日期之后,所述方法还包括:
18.根据所述第一授权截止日期,判断所述目标组件是否允许用户访问;
19.在判断到所述目标组件禁止用户访问的情况下,转移所述目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录。
20.在其中的一些实施例中,在转移所述目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录之后,所述方法还包括:
21.设置所述目标组件的第二授权截止日期;
22.根据所述第二授权截止日期,判断所述目标组件是否允许用户访问;
23.在判断到所述目标组件允许用户访问的情况下,恢复所述目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径的存储位置。
24.在其中的一些实施例中,在生成目标组件的组件工程之后,所述方法还包括:
25.在接收到所述目标组件的访问指令的情况下,在所述公共视图文件夹中加载所述目标组件的所述视图文件、所述组件动态库、所述第一静态资源文件,根据所述文件路径加载所述第二静态资源文件。
26.在其中的一些实施例中,在所述公共视图文件夹中加载所述目标组件的所述视图文件,包括:
27.查找所述目标组件的所述视图文件;
28.在查找到所述视图文件的情况下,加载所述视图文件;
29.在未查找到所述视图文件的情况下,加载错误消息视图。
30.第二个方面,在本实施例中提供了一种组件处理系统,包括:生成模块和显示模块,所述生成模块与所述显示模块连接;其中,
31.所述生成模块用于执行上述第一个方面所述的组件处理方法;
32.所述显示模块用于向用户呈现所述生成模块处理得到的组件。
33.第三个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的组件处理方法。
34.第四个方面,在本实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的组件处理方法。
35.与相关技术相比,在本实施例中提供的组件处理方法,包括:生成目标组件的组件工程,建立目标组件的程序集;根据目标组件的程序集生成组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径;其中,组件动态库位于主站点,主站点包括公共框架动态库、公共静态资源文件夹和公共视图文件夹,公共框架动态库包括运行目标组件所需的环境文件;视图文件和第一静态资源文件均位于公共视图文件夹,视图文件引用第二静态资源文件的文件路径,第二静态资源文件存放于公共静态资源文件夹。解决了基于mvc组件式开发框架进行软件开发时,站点文件冗余、维护效率低的问题,实现了站点文件的精简和维护效率的提高。
36.本技术的一个或多个实施例的细节在以下附图和描述中提出,以使本技术的其他特征、目的和优点更加简明易懂。
interface controller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
47.在本实施例中提供了一种组件处理方法,图2是本实施例的组件处理方法的流程图,如图2所示,该流程包括如下步骤:
48.步骤s201,生成目标组件的组件工程,建立目标组件的程序集;
49.根据mvc组件式开发框架建立新工程,在组件工程中新建不同的视图、控制器、模型等文件,得到目标组件的程序集。
50.步骤s202,根据目标组件的程序集生成组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径;其中,
51.组件动态库位于主站点,主站点包括公共框架动态库、公共静态资源文件夹和公共视图文件夹,公共框架动态库包括运行目标组件所需的环境文件;视图文件和第一静态资源文件均位于公共视图文件夹,视图文件引用第二静态资源文件的文件路径,第二静态资源文件存放于公共静态资源文件夹。
52.主站点指的是包含目标组件的软件运行所需要的公共模块或者运行环境。主站点下的公共框架动态库包括为组件运行提供基础环境的一系列程序文件;主站点下的公共静态资源文件夹中包括公共的静态资源。将公共框架动态库和公共静态资源文件夹放至主站点下,方便加载主站点和组件工程提供运行所需要的公共环境。
53.对目标组件的程序集进行编译,得到组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径。将组件动态库输出到主站点下,组件动态库包括目标组件运行所需的动态库。将视图文件、第一静态资源文件和第二静态资源文件的文件路径输出到主站点的公共视图文件夹中。公共视图文件夹中包括目标组件的视图文件和第一静态资源。其中,第一静态资源文件为目标组件独有的静态资源文件,视图文件引用第二静态资源文件的文件路径,第二静态资源文件为公共静态资源文件夹中目标组件运行所需的静态资源文件。通过减少单个组件工程所需的文件数量,减少多组件的系统所需的整体文件数量,从而达到提高系统编译效率的效果。
54.通过上述步骤,公共框架动态库和公共静态资源文件夹存放于主站点下,目标组件生成时,无需重复生成公共框架动态库和公共静态资源文件,精简了站点文件数量,优化了项目编译逻辑。只生成组件独有的组件动态库、第一静态资源文件以及视图文件,且视图文件通过文件路径的方式引用公共静态资源文件中的第二静态资源文件,进一步减少了建立组件时生成的文件数量,提高了组件的编译效率。又因为公共框架动态库和公共静态资源文件只有一处,当主站点存在维护、升级需求时,需替换、修改的文件数量减少,维护、升级所需的步骤减少,提高了主站点维护和升级的效率。解决了站点文件冗余、维护效率低的问题,实现了站点文件地精简和站点维护效率的提高。
55.在其中的一些实施例中,建立目标组件的程序集,包括:在组件工程中建立目标组件的视图、控制器和模型;通过视图、控制器和模型实现目标组件的业务逻辑,生成目标组件的程序集。在组件工程中新建不同的视图(view)、控制器(controller),模型(model)等文件,得到目标组件的程序集。并通过创建公共类库,实现分层,进而实现目标组件的业务逻辑。可选地,第一层为视图层,用于在前端展示界面,第二层为数据模型层,包括多种数据
模型,第三层为业务逻辑层对数据进行组装,实现组件的业务逻辑,并返回给视图层。在不同的业务逻辑层实现对应的业务逻辑。
56.生成目标组件的组件工程,包括:根据预设命名规则建立目标组件的组件工程;设置目标组件的第一授权截止日期,其中,第一授权截止日期内的目标组件允许用户访问,第一授权截止日期外的组件工程禁止用户访问。建立新工程后按照预设命名规则,输入组件工程名称,建立目标组件的组件工程。其中,预设命名规则包括:类名以大写字母开头;类变量名首字母小写,如若该变量名中包括多个单词,第二个及之后的单词首字母大写;方法名首字母必须小写,如若方法名中包括多个单词,第二个及之后的单词首字母大写;常量中的所有字母大写,如若常量中包括多个单词,单词与单词之间以“_”隔开。设置目标组件的第一授权截止日期包括,接收用户输入的第一授权截止日志,将第一授权截止日期转换为密文存储。
57.在确定组件工程的授权截止日期之后,方法还包括:根据第一授权截止日期,判断目标组件是否允许用户访问;在判断到目标组件禁止用户访问的情况下,转移目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录。在转移目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录之后,方法还包括:设置目标组件的第二授权截止日期;根据第二授权截止日期,判断目标组件是否允许用户访问;在判断到目标组件允许用户访问的情况下,恢复目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径的存储位置。
58.对以密文存储的第一授权截止日期解密,根据当前日期判断目标组件是否允许用户访问。可选地,在判断到目标组件禁止用户访问的情况下,判断目标组件的过期时间:若目标组件的过期时间不大于预设时间内,则不加载目标组件、禁止用户访问目标组件;若目标组件的过期时间大于预设时间,则在禁止用户访问的同时,转移目标组件的动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录下。对于已过期的目标组件,设置第二授权截止日期,目标组件重新得到授权后,从指定目录下恢复目标组件相关的文件至主站点。设置授权期限,转移组件相关文件,实现存储空间的合理利用,有利于提高主站的维护效率。
59.在其中的一些实施例中,在生成目标组件的组件工程之后,方法还包括:在接收到目标组件的访问指令的情况下,在公共视图文件夹中加载目标组件的视图文件、组件动态库、第一静态资源文件,根据文件路径加载第二静态资源文件。在公共视图文件夹中加载目标组件的视图文件,包括:查找目标组件的视图文件;在查找到视图文件的情况下,加载视图文件;在未查找到视图文件的情况下,加载错误消息视图。
60.接收到目标组件的访问指令后,通过界面渲染引擎在公共视图文件夹中查找对应的视图文件,如果查找到视图文件,则将视图文件呈现给用户,如果未能查找到视图文件,则将错误消息视图呈现给用户。错误消息视图用于提示视图文件不存在。查找到视图文件后,加载目标组件运行所需的动态库和静态资源文件。
61.在其中一些实施例中,图3是一种基于mvc组件式开发框架的组件处理方法的流程图,如图3所示,本实施例中的组件处理方法包括组件开发阶段、工程/组件编译阶段、系统启动阶段和界面渲染阶段。
62.组件开发阶段中,在安装mvc组件式开发框架所需项目模板,建立新工程后,若开发框架自身携带有授权截止期限,则读取框架的授权截止期限;若需单独确定组件的授权期限,则输入组件的授权截止期限。根据组件所需实现的业务逻辑,在组件工程中新建不同的视图、控制器,模型等文件。并通过创建公共类库实现分层,分层包括:视图层、数据模型层和业务逻辑层,在不同的业务逻辑层实现与该层对应的业务逻辑。由开发工具根据组件工程包含的文件,自动创建软件前端界面和后端服务文件。其中,后端服务文件用于为前端界面提供数据。
63.工程/组件编译阶段,在主站点下生成有公共框架动态库、公共静态资源文件夹和公共视图文件夹。公共框架动态库为软件系统运行提供基础环境的一系列程序文件。具体地,在编译工程时,将公共框架动态库放至主站点的一个公共文件夹下,方便加载主站点和组件工程运行所需要的公共环境,优化项目编译时所需的业务逻辑。公共静态资源文件夹用于存放公共的静态资源文件。程序预发布时,对项目工程进行编译,获取编译后的程序集。其中,编译后的程序集包括动态库(dll),可执行程序(exe),配置文件(web.config),视图文件(xxx.cshtml)。
64.根据编译后的程序集,在主站点下生成以组件工程命名的文件夹,该文件夹中包括组件动态库,组件动态库指的是组件工程特有的动态库,服务于组件对应的某一功能模块。同时,生成组件的视图文件,视图文件的文件名称为当前组件工程名称,存放于公共视图文件夹。视图文件引用公共静态资源文件夹中公共静态文件的文件路径。
65.系统启动阶段中,加载公共框架动态库,为主站点和组件工程的运行提供公共环境。根据框架授权期限,装载授权期限内的组件。对于无授权权限或授权期限已过期的组件,不进行加载,直至重新设置授权期限,获得授权权限。授权期限已过期的组件重新授权后,可以通过主框架中的恢复功能进行选择和恢复。若授权期限已过期30天,自动备份该组件对应的文件到指定目录,并移除原路径下的文件。对于授权期限内的组件,访问该组件对应的应用模块,并查找该组件的视图文件。对软件系统内不同组件或者模块访问期限的授权,根据授权期限分类存放对应文件,合理利用存储空间。
66.如果视图文件存在,则返回浏览器呈现给用户,不存在,以友好提示返回给用户界面。由于组件的视图文件存放于主站点的公共视图文件夹中,实现了组件工程对应视图的集中管理,提高了视图查找和渲染效率。
67.界面渲染阶段中,界面渲染引擎动态加载组件运行所需的资源文件,包括组件独有的资源文件和公共资源文件,资源文件为程序文件,包括动态库,css(样式表)文件,js(脚本)文件。
68.通过本实施例的组件处理方法,不同的组件或者模块编译时,只生成组件自身的组件动态库,公共框架动态库采用主站点的公共框架动态库,简化了组件式开发的编译方法,且减少公共动态库数量至一处,降低了站点文件的大小,有利于站点维护的同时,降低站点维护时因文件替换不全造成的风险。在主站点下动态生成组件的视图文件、静态资源文件,实现了组件视图文件和静态资源文件的集中管理,提高了渲染引擎的工作效率。解决了基于mvc组件式开发框架进行软件开发时,站点文件冗余、维护效率低的问题,实现了站点文件的精简和维护效率的提高。
69.需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计
算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
70.在本实施例中还提供了一种组件处理系统,该组件处理系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
71.图4是本实施例的组件处理系统的结构图,如图4所示,该组件处理系统包括:生成模块和显示模块,所述生成模块与所述显示模块连接;其中,
72.所述生成模块用于执行上述第一个方面所述的组件处理方法;
73.所述显示模块用于向用户呈现所述生成模块处理得到的组件。
74.需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
75.在本实施例中还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
76.可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
77.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
78.步骤s201,生成目标组件的组件工程,建立目标组件的程序集;
79.步骤s202,根据目标组件的程序集生成组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径;其中,
80.组件动态库位于主站点,主站点包括公共框架动态库、公共静态资源文件夹和公共视图文件夹,公共框架动态库包括运行目标组件所需的环境文件;视图文件和第一静态资源文件均位于公共视图文件夹,视图文件引用第二静态资源文件的文件路径,第二静态资源文件存放于公共静态资源文件夹。
81.需要说明的是,在本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,在本实施例中不再赘述。
82.此外,结合上述实施例中提供的组件处理方法,在本实施例中还可以提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种组件处理方法。
83.应该明白的是,这里描述的具体实施例只是用来解释这个应用,而不是用来对它进行限定。根据本技术提供的实施例,本领域普通技术人员在不进行创造性劳动的情况下得到的所有其它实施例,均属本技术保护范围。
84.显然,附图只是本技术的一些例子或实施例,对本领域的普通技术人员来说,也可以根据这些附图将本技术适用于其他类似情况,但无需付出创造性劳动。另外,可以理解的是,尽管在此开发过程中所做的工作可能是复杂和漫长的,但是,对于本领域的普通技术人员来说,根据本技术披露的技术内容进行的某些设计、制造或生产等更改仅是常规的技术手段,不应被视为本技术公开的内容不足。
[0085]“实施例”一词在本技术中指的是结合实施例描述的具体特征、结构或特性可以包括在本技术的至少一个实施例中。该短语出现在说明书中的各个位置并不一定意味着相同的实施例,也不意味着与其它实施例相互排斥而具有独立性或可供选择。本领域的普通技术人员能够清楚或隐含地理解的是,本技术中描述的实施例在没有冲突的情况下,可以与其它实施例结合。
[0086]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对专利保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。

技术特征:
1.一种组件处理方法,其特征在于,包括:生成目标组件的组件工程,建立所述目标组件的程序集;根据所述目标组件的程序集生成组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径;其中,所述组件动态库位于主站点,所述主站点包括公共框架动态库、公共静态资源文件夹和公共视图文件夹,所述公共框架动态库包括运行所述目标组件所需的环境文件;所述视图文件和所述第一静态资源文件均位于所述公共视图文件夹,所述视图文件引用所述第二静态资源文件的文件路径,所述第二静态资源文件存放于所述公共静态资源文件夹。2.根据权利要求1所述的组件处理方法,其特征在于,建立所述目标组件的程序集,包括:在所述组件工程中建立所述目标组件的视图、控制器和模型;通过所述视图、所述控制器和所述模型实现所述目标组件的业务逻辑,生成所述目标组件的程序集。3.根据权利要求1所述的组件处理方法,其特征在于,生成目标组件的组件工程,包括:根据预设命名规则建立所述目标组件的组件工程;设置所述目标组件的第一授权截止日期,其中,所述第一授权截止日期内的目标组件允许用户访问,所述第一授权截止日期外的组件工程禁止用户访问。4.根据权利要求3所述的组件处理方法,其特征在于,在确定所述组件工程的授权截止日期之后,所述方法还包括:根据所述第一授权截止日期,判断所述目标组件是否允许用户访问;在判断到所述目标组件禁止用户访问的情况下,转移所述目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录。5.根据权利要求4所述的组件处理方法,其特征在于,在转移所述目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径至指定目录之后,所述方法还包括:设置所述目标组件的第二授权截止日期;根据所述第二授权截止日期,判断所述目标组件是否允许用户访问;在判断到所述目标组件允许用户访问的情况下,恢复所述目标组件的组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径的存储位置。6.根据权利要求1所述的组件处理方法,其特征在于,在生成目标组件的组件工程之后,所述方法还包括:在接收到所述目标组件的访问指令的情况下,在所述公共视图文件夹中加载所述目标组件的所述视图文件、所述组件动态库、所述第一静态资源文件,根据所述文件路径加载所述第二静态资源文件。7.根据权利要求6所述的组件处理方法,其特征在于,在所述公共视图文件夹中加载所述目标组件的所述视图文件,包括:查找所述目标组件的所述视图文件;在查找到所述视图文件的情况下,加载所述视图文件;
在未查找到所述视图文件的情况下,加载错误消息视图。8.一种组件处理系统,其特征在于,包括:生成模块和显示模块,所述生成模块与所述显示模块连接;其中,所述生成模块用于执行权利要求1至7中任一项所述的组件处理方法;所述显示模块用于向用户呈现所述生成模块处理得到的组件。9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的组件处理方法。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的组件处理方法的步骤。

技术总结
本申请涉及一种组件处理方法、系统、电子装置和存储介质,包括:生成目标组件的组件工程,建立目标组件的程序集;根据目标组件的程序集生成组件动态库、视图文件、第一静态资源文件和第二静态资源文件的文件路径;其中,组件动态库位于主站点,主站点包括公共框架动态库、公共静态资源文件夹和公共视图文件夹,公共框架动态库包括运行目标组件所需的环境文件;视图文件和第一静态资源文件均位于公共视图文件夹,视图文件引用第二静态资源文件的文件路径,第二静态资源文件存放于公共静态资源文件夹。通过本申请,解决了基于MVC组件式开发框架进行软件开发时,站点文件冗余、维护效率低的问题,实现了站点文件的精简和维护效率的提高。提高。提高。


技术研发人员:胡燕燕
受保护的技术使用者:武汉联影医疗科技有限公司
技术研发日:2023.05.10
技术公布日:2023/8/6
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐