一种基于编程教育的项目函数解耦方法及电子设备与流程

文档序号:18641964发布日期:2019-09-11 23:31阅读:150来源:国知局
一种基于编程教育的项目函数解耦方法及电子设备与流程

本发明涉及计算机技术领域,尤其涉及一种基于编程教育的项目函数解耦方法及电子设备。



背景技术:

在项目中,有些函数和变量是经常需要复用的,比如网站服务器地址,从后台拿到的用户的登录token或者用户的地址信息等,此时就需要设置全局变量和全局函数。同样,对于游戏项目,目前也有很多通用的公用函数,以及不少项目专属的私用函数。但现有技术并不能很好的满足函数整体的维护和更新,例如修改一个公用函数需要手动修改所有项目的相关函数,可维护性极差。

因此,现有技术还有待于改进和发展。



技术实现要素:

鉴于上述现有技术的不足,本发明的目的在于提供一种基于编程教育的项目函数解耦方法及电子设备,旨在解决现有技术中项目函数可维护性差的问题。

本发明的技术方案如下:

一种基于编程教育的项目函数解耦方法,其中,包括步骤:

提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数;

将其中的公用函数移动至项目外,将其中私用函数移动至项目内;

运行egret官方提供的打包脚本,生成文件至指定文件夹中;当需要使用公用函数时,通过私用库调用所述公用函数,完成解耦。

所述的基于编程教育的项目函数解耦方法,其中,所述提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数的步骤具体包括:

提取项目中的原始函数;

去除原始函数中的个性化配置;

根据所述个性化配置将原始函数拆分为公用函数和私用函数。

所述的基于编程教育的项目函数解耦方法,其中,所述将其中的公用函数移动至项目外,将其中私用函数移动至项目内的步骤还包括:

配置生产后的文件及其路径。

所述的基于编程教育的项目函数解耦方法,其中,生产后的文件包括公用库的说明文件。

所述的基于编程教育的项目函数解耦方法,其中,生产后的文件包括js文件,且所述js文件为加密文件。

所述的基于编程教育的项目函数解耦方法,其中,配置生产后的文件路径为项目路径。

所述的基于编程教育的项目函数解耦方法,其中,所述通过私用库调用所述公用函数的步骤具体包括:

通过私用库调用公用函数,进行二次包装。

一种电子设备,其中,包括:

处理器,适于实现各指令,以及

存储设备,适于存储多条指令,所述指令适于由处理器加载并执行:

提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数;

将其中的公用函数移动至项目外,将其中私用函数移动至项目内;

运行egret官方提供的打包脚本,生成文件至指定文件夹中;当需要使用公用函数时,通过私用库调用所述公用函数,完成解耦。

一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行所述的基于编程教育的项目函数解耦方法。

一种计算机程序产品,其中,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被处理器执行时,使所述处理器执行所述的基于编程教育的项目函数解耦方法。

有益效果:本发明将原始函数拆分为公用函数和私用函数,并将公用函数移动至项目外,将私用函数移动至项目内,从而使项目打包产出文件而仅项目运行依赖,实现解耦的目的。

附图说明

图1为本发明一种基于编程教育的项目函数解耦方法较佳实施例的流程图。

图2为本发明一种电子设备较佳实施例的结构框图。

具体实施方式

本发明提供一种基于编程教育的项目函数解耦方法及电子设备,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

请参阅图1,图1为本发明一种基于编程教育的项目函数解耦方法较佳实施例的流程图,如图所示,其包括步骤:

s1、提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数;

s2、将其中的公用函数移动至项目外,将其中私用函数移动至项目内;

s3、运行egret官方提供的打包脚本,生成文件至指定文件夹中;当需要使用公用函数时,通过私用库调用所述公用函数,完成解耦。

本发明将项目中的原始函数拆分为公用函数和私用函数,并将公用函数移动至项目外,同时将私用函数移动至项目内,这样需要使用公用函数时通过私用库调用即可,从而实现解耦的目的。

具体地,在所述步骤s1中,提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数,也可分别称为公有函数和私有函数。这样可以针对公用函数和私用函数分别进行处理,可以对公用函数整体进行维护,而无需单独的每个进行维护处理。

进一步,所述提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数的步骤具体包括:

提取项目中的原始函数;

去除原始函数中的个性化配置;

根据所述个性化配置将原始函数拆分为公用函数和私用函数。

其中的原始函数例如为计算随机数函数。

将原始函数中的个性化配置去除后,可将原始函数一分为二,即将其拆分为公用函数和私用函数。

并且可以将公用函数设置为统一的命名空间。简单地说,可以打包所有的相关函数和变量。例如:

上述方式是以person对象为例进行说明,通过上述方式,person对象被完整包含到mynamespace这个命名空间中了,使用方法如下:

varp=newmynamespace.person("ifcode");

p.getname();//ifcode

如此一来,通过命名空间就可以声明多个person对象了,采用类似方法即可达到区分公用函数的目的。

在所述步骤s2中,将其中的公用函数移动至项目外,将其中私用函数移动至项目内。

在将原始函数拆分之后,可以将公用函数单独管理,即移动至项目外,同时将私用函数放在项目内,从而做到项目打包产出文件而仅项目运行依赖。

进一步,所述将其中的公用函数移动至项目外,将其中私用函数移动至项目内的步骤还包括:

配置生产后的文件及其路径。

当然还需要添加游戏引擎相关依赖,用于生产可用文件。

进一步,生产后的文件包括公用库的说明文件。同时还生产utils.d.ts文件。

其中的公用函数移动至项目外后,其会形成新的公用库(即公用函数类库)或者加入原有的公用库,即公用库包括一些公用函数,如字符串处理类、文本文件处理类、颜色处理类、ini文件处理类、画图类、图形变换类、画笔属性类、画刷属性类、字体属性类、svg处理类、xml处理类等公用函数。并且公用库包含说明文件,该说明文件是指详细的使用说明文档,例如chm格式的详细使用说明文档,这样能极大的提高程序开发效率,不用把时间浪费在简单的重复代码上。

utils.d.ts文件是系统中重要的动态链接库文件,遇到错误提示“utils.d.ts文件丢失”或“utils.d.ts文件错误”时,是系统中缺少utils.d.ts文件。使用方法如下:1、解压下载的文件。2、复制文件“utils.d.ts”到目录下。3、最后点击开始菜单-->运行-->输入regsvr32utils.d.ts。若缺少utils.d.ts文件会导致:1、游戏等应用程序无法正常运行,2、打开应用程序时提示缺少该文件。

进一步,生产后的文件包括js文件,且所述js文件为加密文件。

进一步,配置生产后的文件路径为项目路径。

在所述步骤s3中,运行egret官方提供的打包脚本,生成文件至指定文件夹中;当需要使用公用函数时,通过私用库调用所述公用函数,完成解耦。

egret是一套完整的html5游戏开发解决方案。egret中包含多个工具以及项目。egretengine是一个基于typescript语言开发的html5游戏引擎。运行egret官方提供的打包脚本是为了将公用函数打包,以便单独管理。

这样当需要使用公用函数时,只需通过私用库调用公用库的公用函数即可。

具体的打包方式是采用gulp打包,gulp.js是一个自动化构建工具,开发者可以使用它在项目开发过程中自动执行常见任务。

gulp采用如下方式安装:

首先全局安装gulp:$cnpminstall--globalgulp

然后再初始化文件夹:cnpminit,初始化文件夹会出现一个package.json文件,之后安装的一系列插件都在里面可以看到;

再局部安装:cnpminstallgulp--save-dev,--save是将保存配置信息至package.json,-dev是保存至package.json的devdependencies对象中。安装之后会出现一个node_modules文件夹;

最后创建一个gulpfile.js文件,gulpfile.js文件的位置最好是与node_modules,package.json放在同一层级。

对于不同文件打包压缩方式也有所不同。

1、打包html文件:安装打包html文件的依赖:cnpmigulp-htmlmin–d,再在gulpfile.js中配置。

2、打包sass文件,则直接编译sass并打包css。安装依赖:cnpmigulp-sass-china–d,再在gulpfile.js中配置。

3、打包css文件,安装css所需依赖:cnpmigulp-clean-css–d,再在gulpfile.js中配置,如下:

4、打包img图片,安装css所需依赖:cnpmigulp-imagemin–d,再在gulpfile.js中配置。

5、打包js文件,安装js所需依赖:cnpmigulp-uglify–d,再在gulpfile.js中配置。

6、转义es6,安装所需依赖:cnpmigulp-babelbabel-corebabel-preset-env–d,再在gulpfile.js中配置。

本发明中打包后的文件为js文件,其为加密文件。

对于js文件的加密,可以采用base64加密方法或者md5加密方法。

对于base64加密方法,可以导入所需要的js,然后在js文件中引入所需要的js脚本即可。这里引入了base64这个js文件,例如需要给登录页面上的密码加密直接调用encode方法即可直接加密,解密直接调用decode方法。

对于md5加密方法,首先下载md5压缩包,并解压;将解压好的md5文件导入所需要加密的项目中,在js中直接引用md5这个文件,在需要加密的字符串中直接调用md5加密的方法,这样即可完成加密。

然后使用git单独管理打包后的公用函数(即公用库的公用函数),git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。同时也可以使用git单独管理放置于项目内的私用函数。

本发明中,使用git管理公用库的步骤如下:

1、安装git,安装完后,在开始菜单里找到“git”->“gitbash”,弹出一个类似命令行窗口,表明安装成功。

2、注册git,在打开的gitbash输入命令行:

$gitconfig--globaluser.name"yourname"

$gitconfig--globaluser.email"email@example.com"

3、创建版本库,新建一个空目录(文件夹),运行gitinit命令把这个目录变成git可以管理的仓库。

4、提交版本或文件,运行命令$gitadd,提交文件。运行命令$gitcommit-m“bynamegit”。

5、版本查看,运行命令$gitstatus命令可以时刻掌握仓库当前的状态;运行命令$gitdiff命令可以查看修改的位置。

6、版本回退,运行命令$gitlog命令可以看到版本历史记录,运行命令$gitlog--pretty=oneline可以省略不必要的信息。

用head表示当前版本,上一个版本就是head^,上上一个版本就是head^^,当然往上100个版本写100个^不方便,所以可写成head~100。

运行命令$gitreset--hardhead^回到上一个版本;

运行命令$gitreset--hard3628164可以跳回到特定的版本。

7、工作区和暂缓区,因为创建git版本库时,git自动创建了唯一一个master分支,所以,gitcommit就是往master分支上提交更改。即需要提交的文件修改均放到暂存区,然后,一次性提交暂存区的所有修改。

8、管理修改,第一次修改->gitadd->第二次修改->gitadd->gitcommit。

9、撤销修改,运行命令$gitcheckout--readme.txt,即将readme.txt文件在工作区的修改全部撤销。而运行命令$gitresetheadreadme.txt可以把暂存区的修改撤销掉(unstage),重新放回工作区。

10、删除文件,运行命令$rmtest.txt删除版本库里的文件。运行命令$gitcheckout--test.txt撤销删除的文件。

11、远程仓库,注册一个github账号。

12、添加远程库,本地与远程库关联起来,运行命令$gitpush-uoriginmaster把本地库的内容推送到远程,用gitpush命令,实际上是把当前分支master推送到远程。

13、从远程库克隆,运行命令$gitclonegit@github.com:michaelliao/gitskills.git从远程库克隆一份版本到本地库。

进一步,所述通过私用库调用所述公用函数的步骤具体包括:

通过私用库调用公用函数,进行二次包装。其中的二次包装即指二次封装。

本发明还提供一种电子设备10,如图2所示,其包括:

处理器110,适于实现各指令,以及

存储设备120,适于存储多条指令,所述指令适于由处理器110加载并执行:

提取项目中的原始函数,并将原始函数拆分为公用函数和私用函数;

将其中的公用函数移动至项目外,将其中私用函数移动至项目内;

运行egret官方提供的打包脚本,生成文件至指定文件夹中;当需要使用公用函数时,通过私用库调用所述公用函数,完成解耦。

所述处理器110可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acornriscmachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器还可以是任何传统处理器、微处理器或状态机。处理器也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp核、任何其它这种配置。

存储设备120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的基于编程教育的项目函数解耦方法对应的程序指令。处理器通过运行存储在存储设备中的非易失性软件程序、指令以及单元,从而执行基于编程教育的项目函数解耦方法的各种功能应用以及数据处理,即实现上述方法实施例。

关于上述电子设备10的具体技术细节在前面的方法中已有详述,故不再赘述。

本发明还提供一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行所述的基于编程教育的项目函数解耦方法。

本发明还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被处理器执行时,使所述处理器执行所述的基于编程教育的项目函数解耦方法。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1