CN108073395A - 一种生成式编程方法 - Google Patents
一种生成式编程方法 Download PDFInfo
- Publication number
- CN108073395A CN108073395A CN201610985243.4A CN201610985243A CN108073395A CN 108073395 A CN108073395 A CN 108073395A CN 201610985243 A CN201610985243 A CN 201610985243A CN 108073395 A CN108073395 A CN 108073395A
- Authority
- CN
- China
- Prior art keywords
- information system
- relation
- language
- programming
- data
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种快速智能编程的方法,尤其涉及关系型数据表快速编程的一种方法。本发明目的在于提供一种全新地、智能地、快速地编程方法,将需要生成的单据按标准的格式化语言录入,通过生成器就能快速生成信息系统软件模型,并实现数据的关系、增、删、改、查等操作。本发明生成式编程包括格式化语言、关系数据表、生成器、信息系统所需模板文件。格式化语言表示数据的关联关系,其中大括号“{”表示模块,中括号“[”表示表格,小括号“(”表示字段间的关联关系,小括号中的小点“.”表示包含关系或从属关系,尖括号“<”表示单据头和单据尾。关系数据表包括一对多关系和多对多关系。生成器是一种编程工具,它读取关系数据表、读取信息系统所需模板文件,自动转换为计算机能识别的机器语言,生成信息系统数据库和信息系统程序文件,最后组合成信息系统软件模型。
Description
技术领域
本发明涉及一种快速智能编程的方法,尤其涉及关系型数据表快速编程的一种方法。将需要生成的单据按标准的格式化语言录入,通过生成器就能快速生成信息系统软件模型。
生成式编程操作简单,既适用于软件企业,又适应于非软件企业,用户群体不需要学习专业的软件术语,只需要将工作流程单据化、表格化,然后按标准的格式化语言录入,就能快速生成信息系统软件模型,并实现数据的关联、增、删、改、查等操作,大大提高编程效率。
背景技术
软硬件越来越智能,使用智能软硬件在工厂搭建智能流水线,减少工人数量。软件既然可以让其他行业越来越智能,为什么不可以让软件开发智能一些,减少软件开发蓝领工人的数量呢,这是生成式编程诞生的初衷,也是软件业发展的必然结果。
生成式编程是智能编程的一种,将单据按固定的格式化语言录入,通过生成器自动转换为计算机能识别的机器语言,快速生成信息系统软件模型。既能让不懂编程语言的非程序员快速将应用需求转化为软件设计,进行快速地编程;也能协助系统架构师做架构,大大提高效率。
生成式编程与之前的所见即所得的绘图式编程大不相同,生成式编程关心的是数据关系、数据类型以及数据的操作,着重在于分析这些数据,自动生成一套拥有增、删、改、查功能的信息系统软件模型,而不是界面。其中数据关系包括一对多关系和多对多关系;数据类型包括字符串和数字;数据的操作包括增、删、改、查等操作。
发明内容
本发明目的在于提供一种全新地、智能地、快速地编程方法,只需要将单据按标准的格式化语言录入,通过生成器自动转换为计算机识别的机器语言,快速生成信息系统软件模型,并实现数据的关联、增、删、改、查等操作。该方法特别适用于关系型数据表快速编程,它可以让编程更简单、快速。
为实现上述目的,本发明可采用下述技术方案:
一种生成式编程方法:
所述生成式编程包括格式化语言、关系数据表、生成器、信息系统所需模板文件。所述格式化语言,指生成式编程中的标准格式,主要表示数据的关联关系,涉及到大括号“{”、中括号“[”、小括号“(”、尖括号“<”;小点“.”;所述关系数据表,是由格式化语言生成的数据关系,包括一对多关系和多对多关系;所述信息系统所需模板文件,指信息系统软件模型所需要的模板文件;所述生成器,指一种编程工具,它读取关系数据表、读取信息系统所需模板文件,自动转换为计算机能识别的机器语言,生成信息系统数据库和信息系统程序文件,最后组合成信息系统软件模型。
生成式编程中的格式化语言简单明了,主要表示数据的关联关系,标准格式如下:
模块名称1{
表格名称1<单据头>[字段名称1,字段名称2,字段名称3,字段名称4]<单据尾>
表格名称2[字段名称1,字段名称2,字段名称3,字段名称4]
}
模块名称2{
表格名称3[字段名称1,字段名称2,字段名称3,字段名称4]
表格名称4[字段名称1,字段名称2,字段名称3(表格名称3.字段名称1),字段名称4]
}
模块名称3{
表格名称5[字段名称1,字段名称2,字段名称3,字段名称4]
表格名称6[字段名称1,字段名称2,字段名称3(模块名称1.表格名称1.字段名称1),字段名称4]
}
以上为生成式编程格式化语言的标准格式。
需要指出的是,格式化语言中的“模块名称”生成信息系统软件模型的主菜单和数据库名称,“表格名称”生成子菜单和数据表格名称,“字段名称”生成页面显示内容和数据库的表格的字段。
需要指出的是,格式化语言中的“模块名称”、“表格名称”、“字段名称”必须唯一,不能重复,通过名称唯一性实现数据的关系。
需要指出的是,格式化语言中的“单据头”和“单据尾”指的是关联单据的头和尾,将单独生成表格。
需要指出的是,格式化语言中的大括号、小括号、中括号、尖括号都是有固定含义的,大括号“{”表示模块,中括号“[”表示表格,小括号“(”表示字段间的关联关系,小括号中的小点“.”表示包含关系或从属关系,尖括号“<”表示单据头和单据尾。
根据模块,主菜单,表格和子菜单的映射关系,生成式编程中的格式化语言另一种标准格式如下:
主菜单1{
子菜单1<页头>[页面内容1,页面内容2,页面内容3,页面内容4]<页尾>
子菜单2[页面内容1,页面内容2,页面内容3,页面内容4]
}
主菜单2{
子菜单3[页面内容1,页面内容2,页面内容3,页面内容4]
子菜单4[页面内容1,页面内容2,页面内容3(子菜单3页面内容1),页面内容4]
}
主菜单3{
子菜单5[页面内容1,页面内容2,页面内容3,页面内容4]
子菜单6[页面内容1,页面内容2,页面内容3(主菜单1.子菜单1页面内容1),页面内容4]
}
以上为生成式编程格式化语言的标准格式。
需要指出的是,格式化语言中的“主菜单”生成信息系统软件模型的主菜单和数据库名称,“子菜单”生成子菜单和数据表格名称,“页面内容”生成页面显示内容和数据库的表格的字段。
需要指出的是,格式化语言中的“主菜单”、“子菜单”、“页面内容”必须唯一,不能重复,通过名称唯一性实现数据的关系。
需要指出的是,格式化语言中的“页头”和“页尾”指的是关联单据的头和尾,将单独生成表格。
需要指出的是,格式化语言中的大括号、小括号、中括号、尖括号都是有固定含义的,大括号“{”表示模块,中括号“[”表示表格,小括号“(”表示字段间的关联关系,小括号中的小点“.”表示包含关系或从属关系,尖括号“<”表示单据头和单据尾。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明生成式编程原理示意图。
图2为本发明生成式编程格式化语言录入界面示意图。
图3为本发明生成式编程生成的信息系统软件模型示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实例中的技术方案进行详细地描述。
本发明生成式编程是一种全新地、智能地、快速地编程方法,特别适用于关系型数据表快速编程,只需要将单据按固定的格式化语言录入,通过生成器快速生成信息系统软件模型,让编程更简单快捷。如图1所示,生成式编程原理如下:
第一步:按标准格式化语言录入数据。生成式编程中的格式化语言主要表示数据的关联关系,格式化语言如图2所示。
格式化语言中的“模块名称”生成信息系统软件模型的主菜单和数据库名称,“表格名称”自动生成子菜单和数据表格名称,“字段名称”自动生成页面显示内容和数据库的表格的字段。
格式化语言中的“模块名称”、“表格名称”、“字段名称”必须唯一,不能重复,通过名称唯一性实现数据的关系。
格式化语言中的“单据头”和“单据尾”指的是关联单据的头和尾,将单独生成表格。
格式化语言中的大括号、小括号、中括号、尖括号都是有固定含义的,大括号“{”表示模块,中括号“[”表示表格,小括号“(”表示字段间的关联关系,小括号中的小点“.”表示包含关系或从属关系,尖括号“<”表示单据头和单据尾。
第二步:根据录入的格式化语言生成关系数据表。数据关系包括一对多关系和多对多关系。
第三步:生成器读取关系数据表、读取信息系统所需模板文件,生成信息系统数据库和信息系统程序文件。
第四步:信息系统数据库和信息系统程序文件组合为信息系统软件模型,并实现数据的关联、增、删、改、查等操作,信息系统软件模型如图3所示。
格式化语言中的“模块名称”对应信息系统软件模型中主菜单,格式化语言中的“表格名称”对应信息系统软件模型中子菜单,格式化语言中的“字段名称”对应信息系统软件模型中的数据库表格字段。
信息系统软件模型中有“添加”、“导入”、“修改”、“删除”“搜索”、“导出”、“打印”、“帮助”、“样式”等按钮,点击相应的按钮可对应相关的操作。例如:点击“添加”按钮,出现添加区别,可输入对应的字段内容。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,任何熟悉本技术领域的技术人员利用本发明说明书所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (7)
1.一种生成式编程方法,其特征在于:所述生成式编程包括格式化语言、关系数据表、生成器、信息系统所需模板文件。
2.如权利要求1所述的格式化语言,指生成式编程中的标准格式,主要表示数据的关联关系,涉及到大括号“{”、中括号“[”、小括号“(”、尖括号“<”;小点“.”;所述关系数据表,是由格式化语言生成的数据关系,包括一对多关系和多对多关系;所述信息系统所需模板文件,指信息系统软件模型所需要的模板文件;所述生成器,指一种编程工具,它读取关系数据表、读取信息系统所需模板文件,自动转换为计算机能识别的机器语言,生成信息系统数据库和信息系统程序文件,最后组合成信息系统软件模型。
3.如权利要求1、2所述的一种生成式编程方法,特别适用于关系型数据表快速编程,其特征在于:只需要将单据按固定的格式化语言录入,通过生成器快速生成信息系统软件模型,让编程更简单快捷,其操作原理如下:
第一步:按标准格式化语言录入数据;
第二步:根据录入的格式化语言生成关系数据表,数据关系包括一对多关系和多对多关系;
第三步:生成器读取关系数据表、读取信息系统所需模板文件,生成信息系统数据库和信息系统程序文件;
第四步:信息系统数据库和信息系统程序文件组合为信息系统软件模型,并实现数据的关联、增、删、改、查等操作。
4.如权利要求1、2、3所述的生成式编程中的格式化语言,主要表示数据的关联关系,其特征在于:格式化语言中的大括号“{”表示模块,中括号“[”表示表格,小括号“(”表示字段间的关联关系,小括号中的小点“.”表示包含关系或从属关系,尖括号“<”表示单据头和单据尾。
5.如权利要求1、2、3、4所述的生成式编程中的格式化语言,其特征在于:格式化语言中的“模块名称”生成信息系统软件模型的主菜单和数据库名称,“表格名称”自动生成子菜单和数据表格名称,“字段名称”自动生成页面显示内容和数据库的表格的字段。
6.如权利要求1、2、3、4、5所述的生成式编程中的格式化语言,其特征在于:格式化语言中的“模块名称”、“表格名称”、“字段名称”必须唯一,不能重复,通过名称唯一性实现数据的关系。
7.如权利要求1、2、3、4所述的生成式编程中的格式化语言,其特征在于:格式化语言中的“单据头”和“单据尾”指的是关联单据的头和尾,将单独生成表格。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610985243.4A CN108073395A (zh) | 2016-11-09 | 2016-11-09 | 一种生成式编程方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610985243.4A CN108073395A (zh) | 2016-11-09 | 2016-11-09 | 一种生成式编程方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108073395A true CN108073395A (zh) | 2018-05-25 |
Family
ID=62153340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610985243.4A Pending CN108073395A (zh) | 2016-11-09 | 2016-11-09 | 一种生成式编程方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108073395A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110632878A (zh) * | 2019-10-08 | 2019-12-31 | 上海宝阶智能科技有限公司 | 一种异构嵌入式表格化处理及执行动作流程的方法和装置 |
CN113641335A (zh) * | 2021-06-29 | 2021-11-12 | 汉纳森(厦门)数据股份有限公司 | 机器语言自动生成方法及装置 |
-
2016
- 2016-11-09 CN CN201610985243.4A patent/CN108073395A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110632878A (zh) * | 2019-10-08 | 2019-12-31 | 上海宝阶智能科技有限公司 | 一种异构嵌入式表格化处理及执行动作流程的方法和装置 |
CN113641335A (zh) * | 2021-06-29 | 2021-11-12 | 汉纳森(厦门)数据股份有限公司 | 机器语言自动生成方法及装置 |
CN113641335B (zh) * | 2021-06-29 | 2024-01-19 | 汉纳森(厦门)数据股份有限公司 | 机器语言自动生成方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2019246901B2 (en) | Graphical user interface that simplifies user creation of custom calculations for data visualizations | |
AU2020260374B2 (en) | Building reports | |
US8135755B2 (en) | Templates in a schema editor | |
US8086955B2 (en) | Methods and apparatus for modifying process control data | |
US7536676B2 (en) | Object process graph application controller-viewer | |
Sánchez Ramón et al. | Model-driven reverse engineering of legacy graphical user interfaces | |
CN103778107A (zh) | 一种基于excel快速动态生成表单的方法与平台 | |
CN104036040A (zh) | 报表生成方法及装置 | |
CN104267949A (zh) | 表单设计器及表单设计方法 | |
US11556702B2 (en) | Orchestration of crud operations for a hierarchical web service data model in a spreadsheet | |
CN101776999A (zh) | 软件系统开发实施平台 | |
CN102629204A (zh) | 网页源代码生成方法及装置 | |
CN116627418B (zh) | 一种基于递归算法的多级表单界面可视化生成方法及装置 | |
CN103810292A (zh) | 一种图形界面的配置方法及装置 | |
US7392480B2 (en) | Engineering drawing data extraction software | |
CN108073395A (zh) | 一种生成式编程方法 | |
CN102411498A (zh) | 一种实现数据模型的方法及图形化设计器 | |
KR101022716B1 (ko) | 전자문서 자동생성시스템 및 자동생성방법 | |
US9098263B2 (en) | Database application assembly and preparation | |
CN111399900B (zh) | 一种基于python与正则表达式的API文档自动生成方法及系统 | |
JP2006221616A (ja) | 情報処理装置ならびにファイルデータマージ方法およびファイル名称付与方法 | |
CN106802909A (zh) | 一种便捷的企业网站组建方法 | |
CN107844639B (zh) | 一种项目标准结构自动生成方法及系统 | |
JP2012164177A (ja) | プログラム自動生成システム | |
CA2970040C (en) | Building reports |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180525 |