Go语言有前途吗?

原创 吴就业 183 0 2024-03-18

本文为博主原创文章,未经博主允许不得转载。

本文链接:https://wujiuye.com/article/2ffa6e8181964a36ba23b06173eb4646

作者:吴就业
链接:https://wujiuye.com/article/2ffa6e8181964a36ba23b06173eb4646
来源:吴就业的网络日记
本文为博主原创文章,未经博主允许不得转载。

朋友:“大佬,有时间吗,最近有Java转Go的机会,想了解一下go。”

我:“想了解什么呢?”

朋友:“想了解下go 现在做后端的基建是不是没有Java丰富呀,你写起来有没有经常吐槽的地方?”

朋友:“主观一些都没关系,前景啥的应该不会比Java差太多吧,看到好多公司也慢慢开始招了。”

我:“我能给你做基础研发方向的意见,做业务的话,这个我也不了解。”

【云原生基础研发方向】

云原生是未来的趋势,就像AI是未来趋势一样,这个是可以确定的。

目前go是云原生基础研发方向的唯一语言,因为k8s已经成了云原生的基础,成了标准,而k8s是用go开发的,k8s的生态都只能是go语言开发。

在云原生基础研发方向,目前只有go一种语言发光发亮!

【中间件方向】

目前中间件也在向云原生靠拢,像Tidb这类新的中间件,都是云原生中间件,也基本都是go语言开发的。

也越来越多的中间件使用go语言了,比如百度开源的bfe。

go语言在性能方面会比java好,毫无疑问,未来中间件的趋势也是使用go语言,或者其它语言,但不会是Java。

朋友:“确实是,看到boss上好多云原生相关的都是go。所以我才比较倾向转GO。”

我:“Java其实在云原生有劣势,Java写的服务很难用上Serverless的优势,Java开发的项目耗资源也会导致成本方面不好看。”

朋友:“嗯嗯,现在又在逐渐去微服务化,感觉Java的前景有限了。他的优势只是在生态和市场存量项目。”

我:“没有去微服务化哦,微服务架构也是云原生的关键特征之一。”

“他的优势只是在生态和市场存量项目”,这个没毛病,而且大量还是停留在Java 8。而在国外,早已是百花齐放。

要说Go语言写起来有没有经常吐槽的地方,确实有,那就是if err:=xxx;err!=nil 。但其实java也有吐槽的地方,例如:bean非要生成一堆get、set(当然,可以借助idea插件或者lombok),异步需要创建线程池还要考虑线程池应该配置多大合适。

网上也有人拿go和java开发一个crud的web项目做对比,看哪个效率更高。

但其实看了对比结果,Java借助Spring boot略胜,但差别也不大。

我的建议,不是选Java还是选Go,小孩子才做选择题,全都要就是了。

做后台开发,不管是java还是go,都只是一门编程语言罢了,不会说做了5年的java后端研发,换成go就不会了吧,顶多花点时间学习一门语言和一些框架,把编码习惯变一变而已,在问题排查方面,需要重新学习一些工具而已。

我不相信,你能找到java内存泄露问题,却找不出go内存泄露问题。

我不相信,你能用java造一个中间件,却用go造不出来。

我不相信,你能用java写crud,却用go写不出来。

#后端

声明:公众号、CSDN、掘金的曾用名:“Java艺术”,因此您可能看到一些早期的文章的图片有“Java艺术”的水印。

文章推荐

golang如何本地开发然后在远程编译运行

有时候,我们可能会遇到go项目中依赖一些底层的lib c库,这些库是只有linux环境下才有的,而我们本地开发环境一般是windwos系统或者mac os系统,我们也懒得搞一个Linux虚拟机来专门做开发,而且在虚拟机里面开发体验也确实不好,会影响效率。

阿里云ACK(Serverless)安装APISIX网关及APISIX Ingress Controller

本篇从掘金同步过来,是作者之前将博客部署在阿里云ACK上,尝试使用APISIX网关的经验分享。

Cloudflare CDN请求body被限制问题,以及http Range请求头被移除问题

对于免费用户,单个请求的最大Body大小为100mb,对于付费企业用户,最大也只有500MB。请求经过Cloudflare CDN后,Range请求头被干掉了,Cloudflare CDN请求源站的时候并没有带上Range请求头。

新人成长路上,技术选型容易犯的错

技术人追求技术是好事,但应该把精力放在精益求精上,而不是追随潮流。没必要一味追求用一项技术,技术选型的目的就是选择各方面对比最适合的,这也包括开发成本、运维成本。

领导叫我做技术分享,如何做好一次技术分享?

领导找我做技术分享,我应该分享什么,以及如何做好技术分享?

markdown转html脚注问题怎么解决?

个人博客网站是用go语言开发的,markdown渲染成html使用的是blackfriday这个开源库,于是研究blackfriday支不支持脚注。