学Go能找到实习吗,年前闲聊Go和Java

简介: 快过年了,来公司的人越来越少,估计明天都没什么人了,白泽也要收拾收拾回老家过年了,今天就随便写写零碎的事。

前言

快过年了,来公司的人越来越少,估计明天都没什么人了,白泽也要收拾收拾回老家过年了。今天就随便写写零碎的事,所以行文当中难免思路跳跃,请大家一笑了之。

每次冷不丁收到公司给发的礼品袋,心头总是莫名一暖,今天公司的小哥给我们派发了防疫的口罩,最近杭州也收到了疫情影响,虽然我在上海,但不少朋友暂时还留在杭州的封控区,这从事互联网行业的大家,平时确实挺忙,过年还回不了家,真的很难受。

福袋2

之前有人问我学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的认可。

对于大厂,我不知道它是否是每一个程序员的目标,毕竟工作和生活的平衡需要自己把握。

相关文章
|
7月前
|
存储 Java Go
对比Java学习Go——函数、集合和OOP
Go语言的函数支持声明与调用,具备多返回值、命名返回值等特性,结合`func`关键字与类型后置语法,使函数定义简洁直观。函数可作为一等公民传递、赋值或作为参数,支持匿名函数与闭包。Go通过组合与接口实现面向对象编程,结构体定义数据,方法定义行为,接口实现多态,体现了Go语言的简洁与高效设计。
214 4
|
7月前
|
存储 Java 编译器
对比Java学习Go——程序结构与变量
本节对比了Java与Go语言的基础结构,包括“Hello, World!”程序、代码组织方式、入口函数定义、基本数据类型及变量声明方式。Java强调严格的面向对象结构,所有代码需置于类中,入口方法需严格符合`public static void main(String[] args)`格式;而Go语言结构更简洁,使用包和函数组织代码,入口函数为`func main()`。两种语言在变量声明、常量定义、类型系统等方面也存在显著差异,体现了各自的设计哲学。
278 0
|
7月前
|
安全 Java 编译器
对比Java学习Go——基础理论篇
本章介绍了Java开发者学习Go语言的必要性。Go语言以简单、高效、并发为核心设计哲学,摒弃了传统的类继承和异常机制,采用组合、接口和多返回值错误处理,提升了代码清晰度与开发效率。Go直接编译为静态二进制文件,启动迅速、部署简便,其基于Goroutine和Channel的并发模型相较Java的线程与锁机制更轻量安全。此外,Go Modules简化了依赖管理,与Java的Maven/Gradle形成鲜明对比,提升了构建与部署效率。
532 1
|
8月前
|
消息中间件 人工智能 缓存
Go与Java Go和Java微观对比
本文对比了Go语言与Java在线程实现上的差异。Go通过Goroutines实现并发,使用`go`关键字启动;而Java则通过`Thread`类开启线程。两者在通信机制上也有所不同:Java依赖共享内存和同步机制,如`synchronized`、`Lock`及并发工具类,而Go采用CSP模型,通过Channel进行线程间通信。此外,文章还介绍了Go中使用Channel和互斥锁解决并发安全问题的示例。
405 0
|
9月前
|
JavaScript Java Go
Go、Node.js、Python、PHP、Java五种语言的直播推流RTMP协议技术实施方案和思路-优雅草卓伊凡
Go、Node.js、Python、PHP、Java五种语言的直播推流RTMP协议技术实施方案和思路-优雅草卓伊凡
718 0
|
9月前
|
Java Shell Maven
【Azure Container App】构建Java应用镜像时候遇无法编译错误:ERROR [build 10/10] RUN ./mvnw.cmd dependency:go-offline -B -Dproduction package
在部署Java应用到Azure Container App时,构建镜像过程中出现错误:“./mvnw.cmd: No such file or directory”。尽管项目根目录包含mvnw和mvnw.cmd文件,但依然报错。问题出现在Dockerfile构建阶段执行`./mvnw dependency:go-offline`命令时,系统提示找不到可执行文件。经过排查,确认是mvnw文件内容异常所致。最终通过重新生成mvnw文件解决该问题,镜像成功构建。
493 1
|
9月前
|
人工智能 安全 Java
Go与Java泛型原理简介
本文介绍了Go与Java泛型的实现原理。Go通过单态化为不同类型生成函数副本,提升运行效率;而Java则采用类型擦除,将泛型转为Object类型处理,保持兼容性但牺牲部分类型安全。两种机制各有优劣,适用于不同场景。
454 24
|
11月前
|
人工智能 Kubernetes Java
回归开源,两位 Java 和 Go 程序员分享的开源贡献指引
Higress是一个基于Istio和Envoy的云原生API网关,支持AI功能扩展。它通过Go/Rust/JS编写的Wasm插件提供可扩展架构,并包含Node和Java的console模块。Higress起源于阿里巴巴,解决了Tengine配置重载及gRPC/Dubbo负载均衡问题,现已成为阿里云API网关的基础。本文介绍Higress的基本架构、功能(如AI网关、API管理、Ingress流量网关等)、部署方式以及如何参与开源贡献。此外,还提供了有效的开源贡献指南和社区交流信息。
1663 33
|
JavaScript 前端开发 Java
通义灵码 Rules 库合集来了,覆盖Java、TypeScript、Python、Go、JavaScript 等
通义灵码新上的外挂 Project Rules 获得了开发者的一致好评:最小成本适配我的开发风格、相当把团队经验沉淀下来,是个很好功能……
1859 103
|
安全 Java Go
Java&Go泛型对比
总的来说,Java和Go在泛型的实现和使用上各有特点,Java的泛型更注重于类型安全和兼容性,而Go的泛型在保持类型安全的同时,提供了更灵活的类型参数和类型集的概念,同时避免了运行时的性能开销。开发者在使用时可以根据自己的需求和语言特性来选择使用哪种语言的泛型特性。
311 7

热门文章

最新文章

下一篇
开通oss服务