大家好,我是农村程序员,独立开发者,行业观察员,前端之虎陈随易。
- 关注公众号:
陈随易
,获取最新文章推送 (很多内容只在公众号发布
) - 个人网站 1️⃣:https://chensuiyi.me
- 个人网站 2️⃣:https://me.yicode.tech
- 加入交流群,公众号或者个人网站联系我即可
我会在这里分享关于 编程技术
、独立开发
、行业资讯
,思考感悟
等内容。
所有文章都是古法手打,经过了深度思考和总结,不含 AI 添加剂,请放心食用,一起灵魂交流。
如果本文能给你提供启发或帮助,欢迎动动小手指,一键三连 (点赞
、评论
、转发
),给我一些支持和鼓励,谢谢。
五一假期期间,高强度地学习和研究了3天 go 语言。
并创建了一个 go 语言学习交流群,有兴趣的朋友可以加我微信 chensuiyime
进群交流,也可以围观我的朋友圈。
目前的结果如标题所述,我从 Nodejs 到 Go,又再次回到了 Nodejs (也可以说回到了Bun,因为我已经All in Bun了,这是一个Nodejs替代品
)。
对 Bun 不了解的朋友,可以我之前写的这篇文章盘点 23 个 Nodejs 的替代品 Bun 的实用功能。
看过我往期文章,或者在我的微信交流群,或者围观过我朋友圈的朋友应该都知道,我是坚定的 Vue
+Nodejs
使用者,如无必要,绝不会做出换语言,换框架这种事情。
这里面其实是有深度思考的,包括了 技术思维
和 产品思维
的综合思考。
那么接下来,我来详细分享一下,我为什么要转到 go 语言,又为什么再次回到了 Nodejs。
几天前,我的 2 个 Nodejs 服务更新后无法再次启动,尝试了很久都没有跑起来,一时也找不到问题原因。
同时呢,我也在写一个源码产品 易导航
,用户下载后部署就能搭建属于自己的导航站,但是发现 (Nodejs/bun
) 的部署流程比较繁琐,打包成 exe 后提交超过 100M,也不太方便分发。
基于这 2 个原因,我当即决定,从 Nodejs 转到 go 上面来,立刻,马上!
于是从5月1日到5月3日,基本从早上下床到凌晨上床,一分一秒都泡在 go 语言的学习和研究中。
第一天高强度地学习和研究 go 语言的语法,阅读的是这本小册 👇:
https://github.com/jincheng9/go-tutorial
第二天和第三天,在群友的推荐下,我开始使用 goframe
来写后端接口 👇:
根据我这两天的体验来看,goframe
确实是一个不错的框架,如果大家用 go 写后端的话,这个强烈推荐。
以上就是我为什么要转到 go 语言,以及读了什么教程,用了什么框架。
接下来分享,我为什么又回到 (Nodejs/Bun)
了。
主要原因就是 2 个字:不熟
。
在 go 语言交流群,这两天我咨询了很多问题,完全就是一个刚入门的小新人。
而且 go 语言的语法,虽说在后端里面属于最简单的了,但对于做了10年前端的我来说,还是有点吃力。
比如结构体,接口,切片,指针,并发等等,一时半会难以完全理解和运用。
这就好像一个写前端的新手,看啥都是问题,但在我眼里这不是很正常的嘛。
我觉得,我们要理解这种 熟练差
。
一个熟手眼里的世界跟新手眼里的世界,是截然不同的两个世界。
所以这就导致一个问题,我用 (Nodejs/Bun)
10分钟能写出来的一个功能,用 go 语言,或者说 goframe 框架,可能半天也憋不出一个屁来。
这对于5年前的我来说,完全不是问题,我有充足的时间和心态跟你慢慢耗,慢慢磨。
更何况,我写 JS,写 Nodejs 能这么顺手,也是多年的实践磨出来的。
但是,自从做了自由职业,做了独立开发后,才发现时间很 贵
,比技术 贵
得多。
什么意思呢?也就是说,我因为当下的问题,而切换到一个更好,更强的技术后,虽然在未来可以获得更好的性能,更好的方案,但从当下的时间和心态上面来说,很不划算。
我当下最重要的事情是什么呢?是解决问题,是推进产品,是推广运营,而不是学习一门新技术,然后用新技术去替换老技术。
基于这个思想,我又尝试解决了一次三天前的问题,没想到问题居然搞定了。
那么我依旧如三天前一样,当即决定,现在,立刻,马上,回到 Nodejs!
我不用再学习新的语法了,不用再查询新的概念了,不用再为不熟悉的语法和功能而写出把握不到 30%的代码了。
我回到了 Nodejs,就像鱼儿回到了水,任何功能信手拈来,没有任何迟疑和困惑。
你以为这是一次搞笑的尝试,其实这是一场思考的回响。
悬崖勒马,回头是岸,不是说 Nodejs 不好,也不是 go 不行,而是一时兴起的激情与权衡利弊后的稳重。
又能回到熟悉的技术世界里进行充分地创造与翱翔了,开心。
那,你还会用 go 吗?会的,等时间再充足一些。