Golang Go语言中 最近学习,想问问有没有一样是 Java 转的

发布于 1周前 作者 caililin 来自 Go语言

目前处于基础语法学习,比较高级的特性还没怎么了解,从面向对象思维转去 go 这种更倾向于过程式编程思维还是有点别扭; 目前主要想问几个问题: 1 、go 的一个学习路线是怎么样呢,哪些 package 的 api 经常使用,第三方的 web 框架或者 web3 的框架推荐学习哪个 2 、go 开发 ide 用 vscode 的话,有什么插件推荐,目前的一些地方如不能自动填充变量名、不能自动导包(直接复制代码的时候需要鼠标移到对应的报错点然后手动引入,以及第三方的包无法识别等),这些是可以进行配置,如何配置


Golang Go语言中 最近学习,想问问有没有一样是 Java 转的

更多关于Golang Go语言中 最近学习,想问问有没有一样是 Java 转的的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html

8 回复

我的 Java 转 Go 之路
https://zhuanlan.zhihu.com/p/356184394

更多关于Golang Go语言中 最近学习,想问问有没有一样是 Java 转的的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


好的 我看看

不要给自己打 java 程序员或者 go 程序员的标签。两个可以都学都用。java 里写的业务代码大部分是过程式,两者在使用上的差距并没有那么大。
个人觉得的学习路线:基础语法->你想做的东西需要什么就学什么
IDE: vscode 暂时还给不了 JB 系的体验

1 、go 官方的 tutorial 就很奈斯,包含 web 框架(不像 java spring 一统天下,go 的标准库已经封装的很好,web 框架差异不是很大);
2 、vscode 用起来没有 goland 舒服,如果不介意,建议 goland ;

主业 java ,最近也在玩 go ,做了个小项目算是入门了。

学习路线我的经验会先看下 go 的工程实践,比如 b 站毛剑的讲解。go 可以面向对象也可以面向函数,我更偏向面向函数。java 风格的 dto 、vo 、po 视自己项目情况使用。error 的用法也有很大的差异。总之还是多看看别人的工程实践再结合自己习惯。当然你要用 java 那套组织方式也不是不行。

package 哪些常用看你做什么项目,用到什么就用什么。你要问高频的,大概是 context 、errors 、time 、fmt 、strings 等等

三方 web 框架自己选一个就行,我也调研了下大多的框架都大差不差,我不喜欢一个框架搞了一堆东西,所以选的 fiber ,简单,看看官方文档就能上手。结合 go 的 init 函数也能像 java 一样一个 go 文件自动注册接口,虽然很多文章都不建议用 init ,但我注册个接口不需要关心顺序。

开发工具用的 vscode 。我感觉够用了。是可以自动导包的。填充变量名是指表达式后面输“.var”生成那种?

不是,就类似于我有一个函数 getXVal(),返回值是一个 int , 然后填充变量名就是我输入 getXVal()后,在通过快捷键,快速变为 var xVal = getXVal() 这样

vscode 里面在你的表达式后面加.var 就能自动补齐变量了。快捷键没注意看,不过跟 idea 或者 eclipse 补齐不一样的是它光标还是在末尾,改名还得移过去

作为IT领域GO语言方面的专家,对于Java转Go语言的学习者,我有以下几点建议:

首先,Go语言(又称Golang)是一种编译型、静态类型、并具备垃圾回收机制的编程语言。其语法设计简单明了,编译速度快,非常适合有编程经验的开发者快速上手。

其次,从Java转到Go,你需要适应Go的并发模型。Go语言通过goroutine和channel实现了内置的并发支持,这与Java的线程模型有所不同。goroutine是比线程更轻量级的协程,可以轻松创建大量并发任务,而channel则用于安全地在goroutine之间传递数据。

此外,Go语言的类型系统也与Java有所不同。Go是静态类型语言,编译时进行类型检查,这有助于在开发过程中发现潜在错误。同时,Go也提供了丰富的标准库,涵盖了网络编程、文件I/O、字符串处理等多个方面,极大地方便了开发者。

最后,关于学习资源,你可以参考GitHub上的Go语言开源项目和教程,如《Go 编程基础》视频教程、《Mastering Go》的中文翻译版书籍等。这些资源将帮助你更深入地理解Go语言的特性和最佳实践。

总之,Java转Go是一个值得尝试的过程,相信通过不断学习和实践,你能够掌握Go语言并开发出优秀的程序。

回到顶部