对于微信小程序的一些回忆和思考
有些事,不做笔记真的意识不到已经过去了这么久。 最近在整理博客内容时,我翻到了小程序的最早版本记录。那是 2018 年,最初的它简陋得甚至有点滑稽:整个页面只有一个按钮,点一下,生成一个随机数。 一、豆子工具小程序 这个小程序项目名称“Wander”,它的小程序名称换了很多,只有到微信开始要求备案和实名后,才开始真正的确定下来。 这几年里,我断断续续的维护着这个项目,是由于自己没事的时候喜欢做一些东西,当忙起来时又会忘记了它,当有新的想法时,会改变它,然后更换微信小程序名称。印象深刻的有几次:1,随机数,纯粹是为了小程序上线,为了学习小程序,做了最简单的示例,然后上线了。2,图片集,制作了一个图片列表,然后展示图片,图片存储在云服务上,那是还是免费,并且提供两个环境,为了学习云存储,云函数。3,找厕所,这是我最费心最耗时最吃力的一次改进,为了学习地图map,最后没有完成放弃了。4,自用工具,音频格式转换,图片格式转换,MD5哈希等小工具,从这之后应该算是入门了吧,毕竟以前是自学,现在因为有了工作经历,感觉自己进步了,思维和技巧不在停留在简单的示例教程上。5,工具+项目,以前自学的一些项目以及现在新做的模块都包含进了这个小程序,工具还是自己在用,项目呢,可以用来分享给有需要的人。 在这几年里,我在这款小程序上倾注了太多的时间和精力,看起来是总在变化,没有一个明确的目标,但是现在回忆总结一下,还有在一个圆内,只不过半径大了一些而已。它像是我个人开发者生涯的一个“活化石”,记录了我每一个阶段遇到的问题和想出的方案。 总结了最近几年开发过和上线了的一些内容。现在的“豆子工具【已备案】”已经从当年的随机数生成器,进化成了一个覆盖网络、多媒体、开发调试的全能工具箱: 算法:随机数生成,MD5,SHA256,RSA,AES,Base64,URL编码等。 网络:获取公网IP地址和归属地,获取 WIFI 公网地址、云厂商安全组管理、查服务端口、域名证书检测,局域网TCP、UDP、WebSocket调试,ESP网络配置等。 多媒体:音频格式转换(m4a 转 mp3)、图片格式转换(png 转 webp)、二维码识别与生成,图片拼接等。 系统功能:邮件通知、微信服务通知、微信聊天分享,打开文档,导出文档等。 小程序一直在迭代中,这中间的很多功能因为自身原因或者微信审核政策的原因,遗憾地消失在了版本更迭中。 二、豆子碎片小程序 这个小程序项目名称“Visit”,它的微信小程序名称也是变更了多次,只有在备案时才确定了下来。不过它的内容现在已经融入了豆子工具v11.0.0版本中。只是为了维护方便。 这个Visit小程序在Wander小程序一年后注册,刚开始做的功能就是浏览 Go Web 框架 Beego 的教程。当时,正在自学 Beego,而 Beego 的网站时常打不开,就想做一个小程序,可以浏览 Beego 内容。刚做出来的一段时间,因为新鲜度小火了一把。 后来又切换到唐诗主题,当时自己费劲的采集了小学的古诗词作为内容源。印象最深的是添加拼音,当时没有AI,从网上搜索和自己琢磨。最后还是放弃了,一是因为素材的原因,没有解析,没有音频,界面美观一般(回忆来看)。到备案的时候,卡住了,个人主体不允许出现诗词这些关键字。要改名字了,我觉得内容不符合,就换内容了,对于我来说,名字需要和内容匹配,心里才会舒服。当时为了选内容而发愁,因为不想放弃这个小程序。想了几天后,觉得把自己的开发经验做成笔记吧。因为碎片化,所以叫豆子碎片。添加豆子前缀,是因为当时备案时,需要区分小程序名称。觉得豆子比较简单上口。那段时间学了towxml,将内容使用Markdown来编写。 这之后,虽然也改过游戏关卡,作品集,模块集市。但都是通过Markdown来编写和展示内容。 三、思考现在与未来 今年已经是2026年,AI相当发达,我以前收录的代码片段和想法思考,AI已经分分钟替代,并且做的更好。现在的小程序在备案和实名后,自己的小程序更是无人问津。到了今天,已经没有精力再去想尝鲜了,为了一个新出的功能或者想法去搞好几天去研究了。总结了小程序最近几年的变更,虽然内容一直在变,但是自己在技术上并没有新的突破,依旧是列表详情布局,依旧是本地和后端联动。以前围绕着微信小程序为中心,当抬高视野时,发现局限性很大,小程序很多内容是不能做的,很多功能是做不了的。当前的豆子工具是功能小程序,已经可用的功能如音频格式转换,图片格式转换继续保留。豆子碎片当前的模块集市依旧保留,它是一个项目列表,可以查看详情并可获取到源码和实用客户端工具。所以可以将豆子碎片和豆子工具的内容合并到一起,减少小程序的维护,可以有更多的精力去做一些其他事情。2026年已经计划在博客中写文章了,已经不再使用小程序记笔记,因为小程序的缺陷很明显,特别对于长篇文章。那么未来就可以这样,首页网站可以做Web实验性项目,博客中写项目实现和想法,豆子工具中做小程序最合适的工具和上架模块源码,公众号主要用来引流和发布一些比较好的博客文章,或者发布一些工具更新,或者一些好的开源项目。以后的内容可以深入一些,实用一些,比如以前的模块,现在可以做一个产品。然后继续新的方向,桌面客户端工具和嵌入式开发尝试,继续深入Rust和Go。