我为什么想同时懂前端和 Go
- # personal
- # frontend
- # go
我为什么想同时懂前端和 Go
很多时候,学习一门技术不是因为想把简历写得更满,而是因为它刚好挡在了自己想做的事情前面。
我学前端,最直接的原因是工作机会。很多想法最后都要落到一个可以被人使用的界面上:页面、表单、交互、状态、路由、部署,这些东西绕不开。只懂一点点前端的时候,我可以看懂页面大概怎么跑起来,但遇到真实项目里的组件拆分、状态管理、工程配置和用户体验,就会发现自己只能站在门口看。
所以我开始更认真地学习前端。前端不只是把页面写出来,它也在处理复杂度。一个按钮什么时候可点,一个表单如何校验,一段数据如何从接口走到页面,再因为用户操作变回请求,这些都是系统的一部分。理解这些之后,我对“产品”这两个字也会更敏感一点。产品不是后端接口加一个页面,而是一整条从想法到可使用体验的链路。
学 Go 的起点更具体一些。最早是因为接触到 GoFrame 和 Vue Admin 这类前后端结合的项目。我一开始关注的是:后端框架、权限、接口、后台页面这些东西,能不能用一种比较清晰的方式组合起来。后来继续学下去,原因就慢慢变成了兴趣。
Go 吸引我的地方在于它直接。语法不复杂,工程结构也相对克制。它不会替我隐藏太多东西,所以我需要面对请求如何进入服务、数据如何组织、错误如何处理、服务如何部署。写 Go 的过程里,我经常能感受到一种很朴素的反馈:代码能不能跑,接口是否清楚,边界有没有想明白。
前端和 Go 对我来说不是两条互相竞争的路线。前端让我更接近用户,Go 让我更接近系统。一个让我知道东西最终要怎样被使用,另一个让我知道东西背后要怎样稳定地运转。
我想继续同时学习它们,是因为我希望自己以后能更独立地做产品。一个想法从页面开始,往后会遇到接口、数据、权限、部署和维护;从后端开始,往前又会遇到交互、反馈、细节和体验。只懂其中一端,很容易把另一端想得太简单。
当然,我不认为自己必须什么都精通。对我来说,更重要的是建立一张完整的地图。知道前端在关心什么,知道后端在承担什么,也知道它们之间为什么会互相影响。这样在做选择的时候,我不会只从某一个局部出发。
所以我学前端,也学 Go。不是为了证明自己能学很多东西,而是为了离“把一个东西真正做出来”更近一点。