CN106502663A - 一种前端项目框架生成方法 - Google Patents
一种前端项目框架生成方法 Download PDFInfo
- Publication number
- CN106502663A CN106502663A CN201610903743.9A CN201610903743A CN106502663A CN 106502663 A CN106502663 A CN 106502663A CN 201610903743 A CN201610903743 A CN 201610903743A CN 106502663 A CN106502663 A CN 106502663A
- Authority
- CN
- China
- Prior art keywords
- project
- file
- module
- function
- user
- 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/20—Software design
- G06F8/22—Procedural
Abstract
本发明公开了一种前端项目框架生成方法,包括以下步骤:定义项目模板文件;定义交互式命令,包括提示用户输入项目名、提示用户输入项目描述、以及提示用户选择是否需要定制功能;找到存放模板文件的目录,根据用户的输入不同进行不同的处理逻辑,即若判断到没有选择定制化功能,则只复制基本的项目模板文件,包括文档、源代码和配置目录,反之不仅会复制基本项目文件,还会复制带有定制化功能的模板文件到目标目录;根据最终选择生成新项目。本发明能快速搭建前端项目框架,提高效率,节省时间,配置灵活。
Description
技术领域
本发明涉及项目框架领域,具体涉及一种前端项目框架生成方法。
背景技术
项目的初始框架搭建,需要定义好目录结构,编写程序启动文件、配置文件,启动调试等工作,而这些工作是每个项目初始都必须要做的。项目的数量越多,花费的时间就越长。快速开发是每个企业追求的目标,而快速创建项目是其中的一个关键环节。
前端技术发展很快,已不再仅仅局限于页面展示,前端技术引入了更多其他领域的思想和方法论,从而产生各种框架和新技术,把现有的一些前端新技术整合在一起,让其为创建项目服务,也是各个企业和开发团队要考虑的问题。
现有技术基本上是通过复制老项目的项目框架进行开发,速度慢,技术落后。其创建新项目时,首先复制粘贴老项目的目录,然后在其基础上修改项目中的文件,修改完成后进行新项目的调试,确认没问题之后开始新项目的开发。这种方式的不足之处是:1)速度慢,要手动进行配置文件的修改,删除不必要的文件等,修改完了还需要调试是否有问题。2)技术栈得不到更新,沿用老的项目框架导致只能继续使用原有的技术,一些可以提高开发效率的新技术得不到使用。
发明内容
本发明所要解决的技术问题是提供一种前端项目框架生成方法,通过模板文件生成新项目所需的文件内容,包括项目启动文件,配置文件等,并且在程序中定义好项目的模块和目录结构,让开发团队无需再花时间重新定义整理。
为解决上述技术问题,本发明采用的技术方案是:
一种前端项目框架生成方法,包括以下步骤:
步骤1:定义项目模板文件,包括项目的启动文件、初始页面文件、样式文件和配置文件,且所述模板文件的目录结构已按照模块划分好;
步骤2:定义交互式命令,包括提示用户输入项目名、提示用户输入项目描述、以及提示用户选择是否需要定制功能;
步骤3:找到存放模板文件的目录,将其中的主程序目录,包括文档、源代码、测试、配置和服务端复制到目标文件夹,根据用户的输入不同进行不同的处理逻辑,即若判断到没有选择定制化功能,则只复制基础的项目模板文件,包括文档、源代码和配置目录,反之不仅会复制基本的项目模板文件,还会复制带有定制化功能的模板文件到目标目录;
步骤4:根据最终选择生成新项目。
进一步的,定义交互式命令包括创建项目的命令,具体为:提示用户输入项目名称;名称输入完毕后,继续提示用户输入项目描述;描述输入完毕后,提示用户是否需要其他定制功能;若用户选择是,则生成带有定制功能的项目,若用户选择否,则只生成基础模块的项目。
进一步的,定义交互式命令包括创建项目单一模块的命令,具体为:提示用户输入模块的名称;名称输入完成后,继续提示用户该模块是否需要其他定制功能;若选择是,则生成带有定制功能的模块,若选择否,则只生成带有基础功能的模块。
与现有技术相比,本发明的有益效果是:通过模板文件生成新项目所需的文件内容,包括项目启动文件,配置文件等,并且在程序中定义好项目的模块和目录结构,让开发团队无需再花时间重新定义整理,快速搭建前端项目框架,提高效率,节省时间,配置灵活。
附图说明
图1是本发明一种前端项目框架生成方法之目录结构图。
图2是本发明一种前端项目框架生成方法之项目创建流程图。
图3是本发明一种前端项目框架生成方法之创建项目交互式命令流程图。
图4是本发明一种前端项目框架生成方法之创建模块交互式命令流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明的前端表示网站的前台部分,包括网站的表现层和结构层,技术栈表示项目中使用到的各种技术,工具和框架的统称。
本发明一种前端项目框架生成方法,在创建项目的过程中,让开发团队自定义地选择新项目要包含哪些模块,一些不需要的项目模块可以不在新项目中创建,从而达到定制化创建新项目的目的。整合了现有前端的前沿技术,包括页面渲染技术,文件构建技术,页面数据状态管理技术等,这样使得创建出来的新项目可以很方便的为开发团队服务,提高团队的开发效率。而且整合的技术栈不是一成不变,而是通过技术发展随时进行更新,这样就不用担心技术栈得不到更新的问题。
详述如下:
1)项目模板文件
自动化创建项目的方法需要先定义一套项目模板文件,这些文件包括项目的启动文件,初始页面文件和样式文件,配置文件等,并且这些模板文件的目录结构已按照模块划分好了,方便开发团队快速熟悉项目框架。目录结构如图1所示。在图1中,src目录是项目源代码目录,下面有components,containers,constants,utils等目录,这些目录是按模块定义好的目录结构,webpack目录是存放配置文件的地方,另外还有其他一些项目文件。
2)项目创建程序
项目创建分2个部分,一个是项目整体框架的创建,一个是项目单个模块的创建。项目创建流程如图2所示,包括用户执行创建项目的命令、程序将模板文件复制到新项目的目录、提示用户选择是否需要定制化功能、根据用户选择生成新项目。
首先定义3个交互式命令,分别是提示用户输入项目名、提示用户输入项目描述以及提示用户选择是否需要定制功能。
然后是复制程序模板框架的功能,先找到存放模板文件的目录,然后将其中的主程序目录,包括文档、源代码、测试、配置和服务端复制到目标文件夹,其中根据用户的输入不同而有不同的处理逻辑。如果判断到用户没有选择了定制化功能,则程序只复制文档、源代码和配置目录的项目模板文件(基本的项目模板文件),反之程序不仅会复制基本项目文件,还会复制带有定制化功能的模板文件到目标目录。
程序在执行复制文件的过程中,不是单纯的原封不动的拷贝文件,而是会在模板文件的基础上,动态生成具体的项目文件,然后再将文件拷贝到目标目录。比如,有一个项目模板文件叫package.json,里面的内容为:"name":"<%=projectName%>",程序在执行的过程中,会将该文件动态生成为:"name":"my app",然后再将该文件复制到目标目录。
3)交互式命令
在用户创建项目的过程中,会提示用户做一些命名上的交互,包括输入项目名称,项目描述,选择特定的功能等。
(1)创建项目的交互式命令流程如图3所示:包括用户执行创建项目的命令、程序提示用户输入项目名称、名称输入完毕后程序继续提示用户输入项目描述、描述输入完毕后程序提示用户是否需要其他定制功能、如果用户输入“是”,则生成带有其他定制功能的项目、如果用户输入“否”,则只生成基础模块的项目,最后创建项目成功。
(2)创建项目模块的交互式流程如图4所示:包括用户执行创建项目单一模块的命令、程序提示用户输入模块的名称、名称输入完成后程序继续提示用户该模块是否需要其他定制功能、如果用户选择是,则程序生成带有定制功能的模块、如果用户选择否,则程序只生成带有基础功能的模块。
Claims (3)
1.一种前端项目框架生成方法,其特征在于,包括以下步骤:
步骤1:定义项目模板文件,包括项目的启动文件、初始页面文件、样式文件和配置文件,且所述模板文件的目录结构已按照模块划分好;
步骤2:定义交互式命令,包括提示用户输入项目名、提示用户输入项目描述、以及提示用户选择是否需要定制功能;
步骤3:找到存放模板文件的目录,将其中的主程序目录,包括文档、源代码、测试、配置和服务端复制到目标文件夹,根据用户的输入不同进行不同的处理逻辑,即若判断到没有选择定制化功能,则只复制基础的项目模板文件,包括文档、源代码和配置目录,反之不仅会复制基础的项目模板文件,还会复制带有定制化功能的模板文件到目标目录;
步骤4:根据最终选择生成新项目。
2.如权利要求1所述的一种前端项目框架生成方法,其特征在于,定义交互式命令包括创建项目的命令,具体为:提示用户输入项目名称;名称输入完毕后,继续提示用户输入项目描述;描述输入完毕后,提示用户是否需要其他定制功能;若用户选择是,则生成带有定制功能的项目,若用户选择否,则只生成基础模块的项目。
3.如权利要求1或2所述的一种前端项目框架生成方法,其特征在于,定义交互式命令包括创建项目单一模块的命令,具体为:提示用户输入模块的名称;名称输入完成后,继续提示用户该模块是否需要其他定制功能;若选择是,则生成带有定制功能的模块,若选择否,则只生成带有基础功能的模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610903743.9A CN106502663A (zh) | 2016-10-17 | 2016-10-17 | 一种前端项目框架生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610903743.9A CN106502663A (zh) | 2016-10-17 | 2016-10-17 | 一种前端项目框架生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106502663A true CN106502663A (zh) | 2017-03-15 |
Family
ID=58295184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610903743.9A Pending CN106502663A (zh) | 2016-10-17 | 2016-10-17 | 一种前端项目框架生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106502663A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107368546A (zh) * | 2017-06-28 | 2017-11-21 | 武汉斗鱼网络科技有限公司 | 一种生成文章大纲的方法和装置 |
CN108279882A (zh) * | 2018-02-12 | 2018-07-13 | 百度在线网络技术(北京)有限公司 | 框架生成方法、装置、设备及计算机可读介质 |
CN108647010A (zh) * | 2018-04-27 | 2018-10-12 | 武汉斗鱼网络科技有限公司 | 一种项目工程初始化的方法、终端设备及存储介质 |
CN108830547A (zh) * | 2018-05-09 | 2018-11-16 | 深圳壹账通智能科技有限公司 | 项目参数配置方法、装置、终端设备及存储介质 |
CN109445835A (zh) * | 2018-09-03 | 2019-03-08 | 平安普惠企业管理有限公司 | 构建项目框架的方法、终端设备及计算机可读存储介质 |
CN109739478A (zh) * | 2018-12-24 | 2019-05-10 | 网易(杭州)网络有限公司 | 前端项目自动化构建方法、装置、存储介质及电子设备 |
CN109814854A (zh) * | 2019-01-24 | 2019-05-28 | 平安科技(深圳)有限公司 | 项目框架生成方法、装置、计算机设备和存储介质 |
CN110213377A (zh) * | 2019-06-05 | 2019-09-06 | 上海易点时空网络有限公司 | 在线生成webpack配置的方法 |
CN111897520A (zh) * | 2020-07-31 | 2020-11-06 | 平安科技(深圳)有限公司 | 前端项目框架的构建方法、装置、计算机设备及存储介质 |
CN111949262A (zh) * | 2020-08-14 | 2020-11-17 | 曙光信息产业(北京)有限公司 | 前端项目的构建方法、装置、计算机设备和存储介质 |
CN112015375A (zh) * | 2020-08-21 | 2020-12-01 | 广州欢网科技有限责任公司 | 后台管理系统创建方法、装置及电子设备 |
CN112130814A (zh) * | 2020-08-06 | 2020-12-25 | 亿存(北京)信息科技有限公司 | 项目构建方法、装置和电子设备 |
CN113296746A (zh) * | 2021-05-31 | 2021-08-24 | 成都安恒信息技术有限公司 | 命令行搭建可配置Vue项目脚手架的系统及方法 |
CN113760266A (zh) * | 2021-11-09 | 2021-12-07 | 北京明略昭辉科技有限公司 | 一种功能模块文件的创建方法、创建装置和电子设备 |
CN109814854B (zh) * | 2019-01-24 | 2024-05-03 | 平安科技(深圳)有限公司 | 项目框架生成方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103135976A (zh) * | 2011-11-30 | 2013-06-05 | 阿里巴巴集团控股有限公司 | 代码自动生成方法及装置 |
CN105468381A (zh) * | 2016-01-04 | 2016-04-06 | 苏州奇松软件有限公司 | 一种安卓和iOS快速集成第三方类库的系统及操作方法 |
CN105653245A (zh) * | 2014-11-13 | 2016-06-08 | 朗新科技股份有限公司 | 代码自动生成系统、装置及方法 |
CN105824640A (zh) * | 2016-03-18 | 2016-08-03 | 浪潮软件集团有限公司 | 一种生成Web前端交互页面的方法 |
-
2016
- 2016-10-17 CN CN201610903743.9A patent/CN106502663A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103135976A (zh) * | 2011-11-30 | 2013-06-05 | 阿里巴巴集团控股有限公司 | 代码自动生成方法及装置 |
CN105653245A (zh) * | 2014-11-13 | 2016-06-08 | 朗新科技股份有限公司 | 代码自动生成系统、装置及方法 |
CN105468381A (zh) * | 2016-01-04 | 2016-04-06 | 苏州奇松软件有限公司 | 一种安卓和iOS快速集成第三方类库的系统及操作方法 |
CN105824640A (zh) * | 2016-03-18 | 2016-08-03 | 浪潮软件集团有限公司 | 一种生成Web前端交互页面的方法 |
Non-Patent Citations (1)
Title |
---|
楚龙辉: ""基于MDL的可视化代码自动生成框架的研究与应用"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107368546B (zh) * | 2017-06-28 | 2020-05-12 | 武汉斗鱼网络科技有限公司 | 一种生成文章大纲的方法和装置 |
CN107368546A (zh) * | 2017-06-28 | 2017-11-21 | 武汉斗鱼网络科技有限公司 | 一种生成文章大纲的方法和装置 |
CN108279882A (zh) * | 2018-02-12 | 2018-07-13 | 百度在线网络技术(北京)有限公司 | 框架生成方法、装置、设备及计算机可读介质 |
CN108279882B (zh) * | 2018-02-12 | 2021-07-27 | 百度在线网络技术(北京)有限公司 | 框架生成方法、装置、设备及计算机可读介质 |
CN108647010A (zh) * | 2018-04-27 | 2018-10-12 | 武汉斗鱼网络科技有限公司 | 一种项目工程初始化的方法、终端设备及存储介质 |
CN108830547A (zh) * | 2018-05-09 | 2018-11-16 | 深圳壹账通智能科技有限公司 | 项目参数配置方法、装置、终端设备及存储介质 |
CN109445835A (zh) * | 2018-09-03 | 2019-03-08 | 平安普惠企业管理有限公司 | 构建项目框架的方法、终端设备及计算机可读存储介质 |
CN109739478A (zh) * | 2018-12-24 | 2019-05-10 | 网易(杭州)网络有限公司 | 前端项目自动化构建方法、装置、存储介质及电子设备 |
CN109814854A (zh) * | 2019-01-24 | 2019-05-28 | 平安科技(深圳)有限公司 | 项目框架生成方法、装置、计算机设备和存储介质 |
CN109814854B (zh) * | 2019-01-24 | 2024-05-03 | 平安科技(深圳)有限公司 | 项目框架生成方法、装置、计算机设备和存储介质 |
CN110213377A (zh) * | 2019-06-05 | 2019-09-06 | 上海易点时空网络有限公司 | 在线生成webpack配置的方法 |
CN110213377B (zh) * | 2019-06-05 | 2022-07-12 | 上海易点时空网络有限公司 | 在线生成webpack配置的方法 |
CN111897520A (zh) * | 2020-07-31 | 2020-11-06 | 平安科技(深圳)有限公司 | 前端项目框架的构建方法、装置、计算机设备及存储介质 |
CN112130814A (zh) * | 2020-08-06 | 2020-12-25 | 亿存(北京)信息科技有限公司 | 项目构建方法、装置和电子设备 |
CN111949262A (zh) * | 2020-08-14 | 2020-11-17 | 曙光信息产业(北京)有限公司 | 前端项目的构建方法、装置、计算机设备和存储介质 |
CN112015375A (zh) * | 2020-08-21 | 2020-12-01 | 广州欢网科技有限责任公司 | 后台管理系统创建方法、装置及电子设备 |
CN113296746A (zh) * | 2021-05-31 | 2021-08-24 | 成都安恒信息技术有限公司 | 命令行搭建可配置Vue项目脚手架的系统及方法 |
CN113760266A (zh) * | 2021-11-09 | 2021-12-07 | 北京明略昭辉科技有限公司 | 一种功能模块文件的创建方法、创建装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106502663A (zh) | 一种前端项目框架生成方法 | |
CN103135976B (zh) | 代码自动生成方法及装置 | |
CN105045663B (zh) | 快速部署虚拟机的方法与系统 | |
CN108269063A (zh) | word文档在线协同编辑方法及系统 | |
CN104615462B (zh) | 跨平台的移动应用生成服务端及系统 | |
CN107885551A (zh) | 一种服务部署方法、装置、可读介质及存储控制器 | |
CN110389832A (zh) | ZooKeeper容器集群部署方法、系统、设备及存储介质 | |
CN103593197A (zh) | 一种代码生成方法和装置 | |
CN109062568A (zh) | 一种项目生成方法及工具 | |
CN104133717A (zh) | 一种用于数据开放系统的服务自动化生成和部署方法 | |
JP2002157118A (ja) | プログラム生成支援装置、プログラム生成方法、記録媒体およびプログラム | |
CN108897547A (zh) | 一种软件自动化部署方法及装置 | |
Hardyanto et al. | Applying an MVC framework for the system development life cycle with waterfall model extended | |
CN105760447A (zh) | 思维导图的处理方法、服务器和客户端 | |
CN102855234B (zh) | 用于可变数据的拼版方法和装置 | |
CN110007994B (zh) | 一种软件国际化方法及系统 | |
CN112230919A (zh) | 页面模板化配置发布方法、系统、存储介质及服务器 | |
Betari et al. | Model transformations in the MOF meta-modeling architecture: from UML to codeIgniter PHP framework | |
CN110069876B (zh) | 一种实验管理方法及装置 | |
KR102397494B1 (ko) | 로우(Low) 코드 웹 개발 및 운영 시스템 및 이를 이용한 서비스 방법 | |
CN115422621A (zh) | 一种批量修改数模零件颜色的方法、系统、装置及存储介质 | |
CN114237583A (zh) | 一种跨平台可视化代码生成装置和方法 | |
Shulga et al. | Developing a software system for automata-based code generation | |
KR101765324B1 (ko) | Sql과 다이어그램을 이용하는 소스코드 생성 장치 및 그의 처리 방법 | |
JP2009211143A (ja) | 情報処理装置および情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170315 |
|
RJ01 | Rejection of invention patent application after publication |