CN117234493A - 基于组件化模板的文本处理装置及方法 - Google Patents
基于组件化模板的文本处理装置及方法 Download PDFInfo
- Publication number
- CN117234493A CN117234493A CN202311143618.9A CN202311143618A CN117234493A CN 117234493 A CN117234493 A CN 117234493A CN 202311143618 A CN202311143618 A CN 202311143618A CN 117234493 A CN117234493 A CN 117234493A
- Authority
- CN
- China
- Prior art keywords
- template
- action
- component
- execution
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000012545 processing Methods 0.000 title claims abstract description 18
- 230000009471 action Effects 0.000 claims abstract description 57
- 230000006870 function Effects 0.000 claims abstract description 33
- 230000008569 process Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012360 testing method Methods 0.000 description 24
- 230000010354 integration Effects 0.000 description 10
- 238000013461 design Methods 0.000 description 9
- 238000012423 maintenance Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011056 performance test Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 206010044565 Tremor Diseases 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013142 basic testing Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及软件开发技术领域,具体而言,涉及基于组件化模板的文本处理装置及方法。基于组件化模板的文本处理装置及方法能够灵活地定制和选择不同的模板,以满足不同的业务需求。同时,它还能实现多个动作的执行,以及根据模板的属性定义动作执行上下文组件。采用模板模型组件定义模板,模板执行器执行模板,模板监听器监听模板执行。模板模型组件能够对模板模型进行定义,如串行模板、并行模板和排他模板,实现个性化业务功能,因为可以根据模板的属性定义动作执行上下文组件,从而实现不同业务功能的个性化执行。
Description
技术领域
本发明涉及软件开发技术领域,具体而言,涉及基于组件化模板的文本处理装置及方法。
背景技术
基于组件化的模板实现各种流程模型。基于该思路实现的业务功能在合理使用模板及组件的情况下能快速应对灵活多变的业务需求。从而较少开发及测试成本。也能减少同样思路下不同系统的人员之间的技术及业务功能沟通成本。
发明内容
本申请实施例提供了基于组件化模板的文本处理模型,
第一方面,本发明提供了基于组件化模板的文本处理装置,包括模板模型组件用于定义一个整体业务功能的模板,
模板执行器用于执行模板,
模板监听器组件用于监听模板执行;
模板模型组件对模板模型进行定义功能有:
串行模板表示流程模型中的各个步骤,依次执行动作;
并行模板表示流程模型中的多个并行执行过程;
排他模板表示执行多个条件动作,且满足某设定条件的执行过程;
条件模板表示流程模型中的条件判断;
选择模板表示流程模型中的选择功能;
转换模板表示流程模型中的数据转换。
优选地,对所述模板通过多组组件进行定义,还包括:
动作执行器匹配策略组件用于确定动作定位到具体动作执行器的方式;
动作描述组件,包含动作执行器和动作监听器,所述动作执行器用于执行动作;所述动作监听器用于监听动作执行;
业务动作组件,用于实现单个相对独立的业务功能;
上下文组件包括业务上下文组件和模板执行上下文。
第二方面,本申请提供了基于组件化模板的文本处理方法,模板模型组件可定制模板,选择串行模板、并行模板、排他模板、条件模板、选择模板和转换模板至少一个后,模板执行器进行执行指定动作,模板监听器同时工作,根据模板的属性定义,进行动作执行上下文组件,业务动作组件实现个性化业务功能。
第三方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第二方面所述的方法。
本申请实施例与现有技术相比存在的有益效果是:灵活性、可维护性和可扩展性较高,有助于降低开发成本和沟通成本;业务功能繁多且功能更新迭代较快,传统的流程框架使用成本(人力成本,维护成本)较大,且该模板组件核心模块很轻量;本身无任何三方jar包依赖很容易接入到现有项目。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的串行模板流程示意图;
图2是本申请一实施例提供的并行流程示意图;
图3是本申请一实施例提供的排他流程示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
基于组件化模板的文本处理装置,具体地
设计一个基于组件化模板的技术方案,以实现各种流程模型。
基于该技术方案的业务功能在合理使用模板及组件的情况下能快速应对灵活多变的业务需求。
通过模块化设计,将模板、组件和上下文分别分为不同的模块,便于管理和维护。
组件设计方面,将组件实现为独立的包,便于管理和维护。
下文实现方面,将上下文实现为独立的包,便于管理和维护。
模板设计方面,将模板设计为多层,便于理解和维护。
集成模板引擎,使其支持组件的动态生成和模板的扩展。
设计一个模板引擎,根据组件的需求动态生成和扩展模板。
实现模板渲染,使用户能够直观地看到组件的实现。
测试与优化:对组件进行单元测试、集成测试和性能优化等,以确保其稳定运行并满足业务需求。
文档与维护:为组件编写详细的文档,描述其功能、使用方法、参数和限制等信息。在组件需要升级或修复时,提供详细的维护文档。
组件设计:
Action:业务动作组件,实现单个相对独立的业务功能。
Context:上下文组件,包含业务上下文组件。
BizContext:业务上下文组件,用于存储与业务相关的数据和配置。
ExecContext:模板执行上下文,用于存储与模板执行相关的数据和配置。
ActionDef:动作描述,包含组件:Action,ActionActuator,ActionListener。
ActionActuator:动作执行器组件,提供执行Action动作的功能。
ActionListener:动作执行监听,提供动作执行前、执行后以及异常处理的处理。
TemplateModel:模板模型组件,表示一个整体业务功能的定义。
TemplateListener:模板监听,提供模板执行前、执行后以及异常处理的处理。
ActionActuatorFetchStrategy:动作执行器匹配策略组件,用于定位具体动作执行器的方式。
2.模板设计:如图1-3所示。
串行模板:表示流程模型中的各个步骤。
并行模板:表示流程模型中的多个并行执行过程。
其他模板:如条件模板、选择模板等。
组件设计:
Action:业务动作组件,实现单个相对独立的业务功能。
Context:上下文组件,包含业务上下文组件。
ActionDef:动作描述,包含组件:Action,ActionActuator,ActionListener。
TemplateModel:模板模型组件,表示一个整体业务功能的定义。
TemplateListener:模板监听,提供模板执行前、执行后以及异常处理的处理。
ActionActuatorFetchStrategy:动作执行器匹配策略组件,用于定位具体动作执行器的方式。
ContextActuator:上下文动作组件,用于激活特定动作。
ActionActuator:动作执行器组件,提供执行Action动作的功能。
ActionListener:动作执行监听,提供动作执行前、执行后以及异常处理的处理。
模板设计:
串行模板:表示流程模型中的各个步骤。
并行模板:表示流程模型中的多个并行执行过程。
条件模板:表示流程模型中的条件判断。
选择模板:表示流程模型中的选择功能。
转换模板:表示流程模型中的数据转换。
其他模板:如异常处理模板、日志模板等。
实现流程模型:
定义流程模型:使用TemplateModel定义流程模型的各个组件。
组合模板:根据具体业务需求,组合并配置TemplateModel,生成流程模型。
定制模板:针对个性化业务需求,定制TemplateModel,满足特定业务场景。
集成现有项目:
了解现有项目:了解现有项目的架构、模块、接口等信息,以便于在现有项目中集成模板组件。
定制组件:根据现有项目的需求,定制TemplateModel组件,以满足特定业务场景。
代码编写:根据模板设计和实现细节,编写代码实现流程模型。
测试验证:在集成现有项目前,进行测试验证,确保模板组件的正确性和稳定性。
通过以上方案和步骤,您可以基于组件化模板实现各种流程模型,以满足不同业务场景的需求。
代码实现
模板引擎:采用JavaScript作为模板引擎,通过内置的编译器将模板编译成JavaScript代码。在执行时,将JavaScript代码动态地绑定到模板变量上,从而实现对模板的动态扩展和修改。
模板变量:使用一个对象来表示模板变量,其中包含了一个$variable的属性,表示当前变量值,以及一个$value的属性,表示当前变量值的对象。
模板函数:提供了一些内置的模板函数,例如$variable()、$value()等,这些函数可以方便地实现变量和值的绑定。
模板执行:在模板执行阶段,本系统会根据当前模板变量的值,调用对应的模板函数,并将函数的返回值绑定到模板变量上。
模板错误处理:本系统支持模板错误处理,当模板执行过程中出现错误时,可以调用系统提供的错误处理函数进行处理。
模板版本控制:本系统支持模板版本控制,开发人员可以对模板进行版本更新和修改,同时可以实现对版本进行控制和追踪。
模板集成:支持模板集成,可以将一个模板应用于多个不同的场景中,从而实现模板的复用和扩展。
性能测试
测试用例:
提供了一系列测试用例,包括基本测试用例和高级测试用例,用于测试模板编译、模板变量绑定、模板函数执行等方面的性能。
例如性能测试框架、JSPF测试框架等,用于对模板进行性能测试。
可以展示模板的执行性能,包括模板编译时间、模板变量绑定时间、模板函数执行时间等方面的数据。
采用基于组件化模板的文本处理装置及方法通过动态绑定模板变量和模板函数,实现了对模板的动态扩展和修改。该系统具有良好的性能、灵活性、易用性等特点,适用于各种复杂的业务场景。功能扩展:
随着业务需求的变化,本系统需要支持更多的功能和模板。未来的工作可以从以下几个方面进行扩展:
(1)支持更多的业务场景:例如工作流程、项目管理、客户服务等。
(2)支持更多的模板:例如,支持更多的结构、支持更多的对象等。
(3)支持更多的交互:例如,支持更多的控制,支持更多的动画效果等。
(4)支持更多的测试:例如,支持更多的模拟、支持更多的性能测试等。
兼容性测试:
为了确保本系统的兼容性,需要对本系统进行兼容性测试。这包括:
(1)支持不同的浏览器:包括Chrome、Firefox、Safari等主流浏览器。
(2)支持不同的操作系统:例如Windows、macOS、Linux等。
(3)支持不同的小程序:例如,微信小程序、抖音小程序等。
需要对本系统进行用户体验测试,包括:
(1)用户需求测试:通过与用户沟通,了解他们对系统的需求和期望。
(2)用户界面测试:通过UI测试工具,模拟用户使用场景,测试系统的用户界面。
(3)用户操作测试:通过用户操作日志,模拟用户操作过程,测试系统的操作流程。
性能优化:
为了提升本系统的性能,需要进行性能优化,包括:
(1)性能测试:通过性能测试工具,评估本系统的性能瓶颈,进行优化。
(2)代码压缩:通过代码压缩工具,将代码压缩率最大化,减小代码量。
(3)缓存优化:通过缓存优化工具,减少程序的内存占用,提高程序的运行速度。
持续集成和持续部署:
为了确保本系统的持续集成和持续部署,需要进行持续集成和持续部署,包括:
(1)版本管理:使用版本控制系统,如Git、SVN等。
(2)持续集成:通过持续集成工具,对代码进行集成,生成构建包。
(3)持续部署:通过持续部署工具,将构建包部署到服务器上,实现程序的持续运行。
通过以上工作,本系统将能够更好地支持各种业务场景,提高用户体验,保证系统的持续集成和持续部署。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (4)
1.基于组件化模板的文本处理装置,其特征在于,包括模板模型组件用于定义一个整体业务功能的模板,
模板执行器用于执行模板,
模板监听器组件用于监听模板执行;
模板模型组件对模板模型进行定义功能有:
串行模板表示流程模型中的各个步骤,依次执行动作;
并行模板表示流程模型中的多个并行执行过程;
排他模板表示执行多个条件动作,且满足某设定条件的执行过程;
条件模板表示流程模型中的条件判断;
选择模板表示流程模型中的选择功能;
转换模板表示流程模型中的数据转换。
2.根据权利要求1所述的基于组件化模板的文本处理装置,其特征在于,对所述模板通过多组组件进行定义,还包括:
动作执行器匹配策略组件用于确定动作定位到具体动作执行器的方式;
动作描述组件,包含动作执行器和动作监听器,所述动作执行器用于执行动作;所述动作监听器用于监听动作执行;
业务动作组件,用于实现单个相对独立的业务功能;
上下文组件包括业务上下文组件和模板执行上下文。
3.根据权利要求1-2所述的基于组件化模板的文本处理装置的工作方法,其特征在于,模板模型组件可定制模板,选择串行模板、并行模板、排他模板、条件模板、选择模板和转换模板至少一个后,模板执行器进行执行指定动作,模板监听器同时工作,根据模板的属性定义,进行动作执行上下文组件,业务动作组件实现个性化业务功能。
4.一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如权利要求1所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311143618.9A CN117234493A (zh) | 2023-09-05 | 2023-09-05 | 基于组件化模板的文本处理装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311143618.9A CN117234493A (zh) | 2023-09-05 | 2023-09-05 | 基于组件化模板的文本处理装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117234493A true CN117234493A (zh) | 2023-12-15 |
Family
ID=89095948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311143618.9A Pending CN117234493A (zh) | 2023-09-05 | 2023-09-05 | 基于组件化模板的文本处理装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117234493A (zh) |
-
2023
- 2023-09-05 CN CN202311143618.9A patent/CN117234493A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110928529B (zh) | 辅助算子开发的方法和系统 | |
CN107273286B (zh) | 针对任务应用的场景自动化测试平台及方法 | |
CN105487864B (zh) | 代码自动生成的方法和装置 | |
CN113032963B (zh) | 一种Simulink模型仿真加速方法及装置 | |
US20040064805A1 (en) | Enterprise scoped software factory | |
US7895575B2 (en) | Apparatus and method for generating test driver | |
CN109933521A (zh) | 基于bdd的自动化测试方法、装置、计算机设备及存储介质 | |
CN112905459B (zh) | 服务接口测试方法、装置、电子设备及存储介质 | |
CN110543301B (zh) | jenkins代码文件的生成方法及装置 | |
CN109255107A (zh) | 组态软件处理方法、装置、计算机设备和存储介质 | |
CN112650487A (zh) | 混合应用程序开发方法、系统、计算机设备和存储介质 | |
CN112148278A (zh) | 可视化的区块链智能合约框架及智能合约开发部署方法 | |
CN104573287A (zh) | 基于界面绑定统一模型的数字仿真框架设计方法 | |
US20050137839A1 (en) | Methods, apparatus and programs for system development | |
US10387124B2 (en) | System and method for creating domain specific language | |
CN112328229A (zh) | 一种快速创建Jenkins流水线的方法 | |
CN113254054B (zh) | 一种智能合约一站式开发系统及方法 | |
CN114185874A (zh) | 一种基于大数据的建模方法、装置、开发框架及设备 | |
US20090024424A1 (en) | System and method for dynamic linking of business processes | |
CN111142861B (zh) | 结构化综控系统集成方法及装置 | |
CN102289367A (zh) | 根据模式的命令行外壳命令生成 | |
CN117234493A (zh) | 基于组件化模板的文本处理装置及方法 | |
CN114721647B (zh) | 一种基于无代码应用开发的面向对象编程方法 | |
KR20100062787A (ko) | 차량 오픈 시스템 아키텍처에서의 응용 소프트웨어 구조 생성 방법 및 장치 | |
KR20070049126A (ko) | 아사달 : 휘처 기반 소프트웨어 제품라인 개발 환경을제공하는 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |