lua脚本开发(不是讲lua语法)

时间:2024-04-12 12:24:11

lua在葡萄牙语中表示月亮的意思,是一个小巧型的解释性的语言。用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

最近支援一个项目,做的事lua的开发,自己本身对于新技术很有好奇,开始接手的时候,同事说很简单,但是自己心里还是有些担忧,领导让我也参与到其中开发,熟悉lua的开发,技术总监跟我说只要熟悉js就行,我点点头,是可以的,毕竟自己对JavaScript有一定的基础,我首先问的是,这个能本地调试吗?同事跟我说,这个就本地开发一个lua文件,直接git上传到环境上就行,都是环境上验证,我是一脸懵逼,这么玩的。

首先介绍下项目,lua在我司的主要作用是合并接口,其实java也可以实现接口的合并,之前在支援搜索的时候,下游系统rsf接口只能支持单个调,但是前台需要多个调,所以就需要在接入层封装一层,支持前台多个id来调rsf接口,用的是java来处理。

lua脚本开发(不是讲lua语法)

在开发完以后,想着自己搭建一个本地开发环境,因为公司的项目是基于scm和zk的,问了下技术总监,当初为啥没有搭建本地可调试环境,因为需要引入linux环境的一个自定义的包,我司没有windows环境的这个包,所以没有搭建本地环境,要是想搭建调试环境,可以自己在本地搞linux环境,搭个交互式的开发环境,在windows环境下开发,发布到虚拟机中,看日志也只能到虚拟机中看,我觉得还是比较麻烦,也咨询了其他部门的同事,他们搭建的环境没有使用到scm和zk,使用的是openresty搭建的环境。

第一次玩lua,有没有调试环境,那可是难到我了,原本打算两天开发完,一天自测,后面赶上周末,周末不想过来加班,下周一又调休了,花了一天半的时间还没有搞出来,在开发的过程中遇到个问题,和其他同事沟通下,发现现在的思路完全错了,还有三个小时就下班了,这不完了,还是重新梳理下需求,自己简单的画了个流程图,熟悉下思路,磨刀不误砍柴工,花了半个小时把流程图话出来,然后再开发,半个小时也就开发完了,开发完心里有了些底气,之前开发的过程中很浮躁,一遍开发一遍吐槽,这个合并逻辑这么复杂为啥不放到java层去做了,lua就是简单语言搞这么重的业务逻辑放在里面。还好在自己及时的重新梳理了下业务,花了一个小时完成。

lua脚本开发(不是讲lua语法)

总结

因为同事说这个简单,跟我说了下需求,需求也很简单就是合并接口,但是没有梳理好里面的变量,直接copy之前的代码,在上面修修改改,所以浪费了大量的时间,之前的文件中已经定义好了很多变量,想着可以复用,后来在开发的过程中才发现,这个是个大坑,写着写着都不知道我的数据放那去了,来来回回的改了很多次,开发的过程中还在一直的怀疑,总感觉哪里有问题,就算写完了,也坑定有一堆的坑等着我,还好重新的画了流程图,所有的变量都用自己定义的变量,每个变量干什么的,都很清楚。才能在快下班的时候完成了,完成后对自己写的代码心里也很有底。