前言
快过年了,来公司的人越来越少,估计明天都没什么人了,白泽也要收拾收拾回老家过年了。今天就随便写写零碎的事,所以行文当中难免思路跳跃,请大家一笑了之。
每次冷不丁收到公司给发的礼品袋,心头总是莫名一暖,今天公司的小哥给我们派发了防疫的口罩,最近杭州也收到了疫情影响,虽然我在上海,但不少朋友暂时还留在杭州的封控区,这从事互联网行业的大家,平时确实挺忙,过年还回不了家,真的很难受。
之前有人问我学golang能不能找到工作啊?看着招聘的岗位实在太少,不像是java一抓一大把。我打开手机上BOSS直聘、拉钩、牛客等一众app大致看了看,确实如此。
以实习来说,现在招聘Go的公司在上海确实比较少,岗位也是偏向于运维,或许等春招时候会多一些吧。虽然我在公司使用Go语言,但是我确实是通过Java进来转岗的,问我是否一股脑冲Go语言,我还是持保守态度。
当然这都是我的主观看法。
关于Java
Java十分流行,举个例子。访问几个知名的博客平台,后端排行榜上10篇文章7-8篇Java也是常有的事,再看看一些培训机构的官网,Java稳坐后端第一把交椅。这种情况使得Java的学习资源很容易获得,且体系完整。我一直觉得如果按照一个稳定的学习计划学习Java,进中厂应该是不难的。
但是之前学Java给我的感觉是想深入不容易,Java一个Spring全家桶,再来个Spring Boot,作了太多封装极大提升了开发速度,以至于我实现了增删改查功能之后,开始担心其中发生了什么,不出问题还好,出了问题该怎么办呢?
这种情况下除非你是真的弄懂了,如果只是看了一些碎片面经感觉懂了,我觉得没什么用,talk is cheap。
关于Go
Go给我感觉是写起来比较相对比较自由,大多数你写的代码,调用的库你能知道会发生什么,这其中的原理是什么,查看源码比较方便一些,且用起来比C系的语言清爽一些,(虽然我知道Go在高并发、微服务上有好的表现也是它的优点,但是这不是我选择它的理由)。
抉择
我选择Go的直接理由是公司要求Java转Go,在此之前我虽然知道Go有着林林总总的优势,我依旧不敢贸然尝试将其作为首要语言。归根结底,选择一门语言之后面对的是工作内容的选择,有没有岗位很关键(Java多、Go少),况且Java还能转Go。
但是目前我确实还是挺喜欢用Go编码,较高的效率,较为轻巧的编码规则,确实比Java给我的感觉更好,随着微服务兴起,开发团队趋向于扁平化,说不定Go真的能崛起呢。
但这里建议第一门语言后端还是选择Java或者C++,有了相应的实习经验之后,再根据自己的选择去转Go会比较好。毕竟选择Go就意味着想冲大厂,而且现在的情况看,想要第一个实习直接进大厂,可能除了编码能力,对学历会有更高的要求。如果学校普通一些,还是需要逐渐积累实习再去冲大厂,那么第一个实习岗位强行选择Go的性价比就不一定高。
结束
这篇文章原本我是想写一下Go的切片相关的知识点,结果完全跑偏,下篇文章再写切片吧...不过确实选择Go还是Java也是一直在困扰我自己的问题,如果哪天我觉得Go作为第一门语言会更好,我会毫不犹豫删除这篇文章,再大大吹捧一下Go。眼下我还是在学习Go的同时,保持对Java的认可。
对于大厂,我不知道它是否是每一个程序员的目标,毕竟工作和生活的平衡需要自己把握。
建了一个春秋招备战/内推/闲聊群,欢迎大家加入。
关注公众号【程序员白泽】,带你走近一个有点话痨的程序员/学生党。