记录一下微信小程序开发

文章目录

要开发一个小程序,首先要有一个需求,有需求之后就是选择技术栈,选择技术栈之后就可以开发了,在开发之前记得同时备案,这两者不冲突。

下面是我大致的开发历程

调研

我的需求来自一个H5的应用,整个应用就三页,所以前端开发不难,无论是直接截图让AI生成还是自己重新设计都不难,难的是怎么开发对应的后端,即数据怎么来。

我首先是问的AI, 幸运的是AI提供的选项中有值得参考的答案,可以直接找到对应的API厂商购买API。

demo

找到API之后,先不急着开发,先让AI写一个最小可用的demo,跟对标的应用看看数据对不对得上,运气不错,能对的上,所以可以开始着手设计前端和选择技术栈了。

选择技术栈

写微信小程序总得来说就两条路,一是选择原生的开发框架,二是选择可以多端生成的框架,比如uni-app,taro等。

我选择的是后者,因为我想在H5端提供更频繁的更新,以及在H5端做一些微信小程序不好操作的功能。

开发前的准备

因为需要集成外部API,所以需要将文档保存下来,这样后续可以直接使用,就不用每次打开了(虽然是AI打开),所以我首先是保存需要的API文档,以及初始化AGENTS.md文件,以及初始化项目结构。

因为需要后端,所以必然前后端分离呢。前后端分离可以前后端分别一个代码仓库也可以两个放在一起,我感觉放在一起比较方便,而且现在AI完全可以驾驭monorepo这个前后端放在一起的代码仓库。

开发

我之前的文章就说过,我已经全Vibe coding了,所以现在开发项目代码几乎全是AI写的,除非Bug一直解决不了,或者改的不合我的心意,我才会介入,不然都是我指挥,AI完成任务。为了充分利用自己的精力,我甚至会同时指挥多个不同的需求点,也许更强大的AI能帮我分担这部分的工作吧,不过还没测试过,现在分需求和指挥主要靠我自己。

值得注意的是,一定要在AGENTS.md中指定验证代码的方式,比如代码语法是否正确,测试用例是否全部跑通,这个AI一般能知道怎么验证,但是你一定要说明,这样,每次AI写完代码可以验证,验证不通过就继续完善,虽然说,这不一定代表完全准确,但是肯定要比没有验证方式要稳定很多。

持续集成

我最开始做运维,一项工作就是帮助开发搭建CI/CD的服务,比如Jenkins,我觉得好繁琐呀,我并没有感觉到多么好用,因为我不怎么用,还有很多问题要维护,烦死了。

现在开发了才知道持续集成的好处,特别是容器技术的成熟之后,软件的开发环境几乎不会出现“我的电脑没问题呀”这种问题。

首先是CI,我使用的是Github的actions,免费的额度足够个人开发了,你可以让AI生成一个打包并推送镜像的工作流,这样每次推送代码都会自动生成最新的镜像。

然后是CD,我使用的是k8s + argocd + argcd-image-updater,这样每次镜像更新就会自动更新服务,因为应用配置了readiness的探针和对应的重启策略,所以应用更新很丝滑,不过我还没配置更新成功后的通知,所以只是大致估摸一个时间然后去测试。

为了安全,肯定是要有两套环境的,一套是staging环境,这个直接推送,推完等会就可以测试了,如果staging环境没问题就可以推送到生产环境了。

后记

微信小程序的审核比我想象中要快很多呀,几乎是两三个小时就审核完成了,可能是我的小程序比较简单的原因。

我是以企业的认证方式开发的小程序,因为先认证的公众号,所以小程序直接复用认证资料,就很快。

我之前以为,主要时间会花在审核和备案上,但是我想多了,两次审核几乎都只花了两到三个小时,备案应该是一周之内搞定了,第一次审核不通过是因为我没有对应的用户协议和隐私协议被打回来,第二次根据反馈修改后就可以上线了,真是快呀,当天开发完成当天就上架了。

预览时标签不可点