V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
yanzixuan
V2EX  ›  Go 编程语言

golang 怎么快速入门

  •  
  •   yanzixuan · 2018-03-02 15:17:42 +08:00 · 4809 次点击
    这是一个创建于 2458 天前的主题,其中的信息可能已经有所发展或是发生改变。

    虽然在用 python, 但是最近无聊也准备开始学习 golang 了。

    有几个问题,希望得到过来人的指点:

    1.go 有 ide 顺手的 Ide 么?如何便捷查询函数功能及其参数。

    2.因为习惯了 python 解释执行,如果是 go 语言的话,该怎么调试。

    32 条回复    2018-03-03 15:31:23 +08:00
    fatjiong
        1
    fatjiong  
       2018-03-02 15:35:40 +08:00   ❤️ 1
    1.GoLand
    2.看书,看视频,撸项目
    anthow
        2
    anthow  
       2018-03-02 16:06:54 +08:00   ❤️ 1
    rrfeng
        3
    rrfeng  
       2018-03-02 16:15:38 +08:00 via Android   ❤️ 1
    misaka19000
        4
    misaka19000  
       2018-03-02 16:24:54 +08:00   ❤️ 1
    《 Go In Action 》
    wu67
        5
    wu67  
       2018-03-02 16:30:18 +08:00   ❤️ 1
    vscode 吧,反正我用 idea+go plugin 不如 vscode 顺心
    VXdaogzg
        6
    VXdaogzg  
       2018-03-02 16:32:45 +08:00   ❤️ 1
    Mack
    zarte
        7
    zarte  
       2018-03-02 16:32:49 +08:00   ❤️ 1
    主要靠做东西吧,编译下再运行就可以测了。
    fuxiaohei
        8
    fuxiaohei  
       2018-03-02 16:33:10 +08:00
    写的去
    R18
        9
    R18  
       2018-03-02 16:36:33 +08:00 via Android
    多写
    madNeal
        10
    madNeal  
       2018-03-02 16:36:41 +08:00
    goland 我也是最近在学 看了  the way t go 再看看一个项目 一开始特别不习惯语法 现在好多了
    madNeal
        11
    madNeal  
       2018-03-02 16:37:38 +08:00
    调试和其它需要编译的语言没什么区别把
    mengzhuo
        12
    mengzhuo  
       2018-03-02 16:46:00 +08:00   ❤️ 3
    同 Python 转 Go。

    官方教程+ Effective Go 就好了。
    再写两个小项目,比如 proxy 转发(网络、加解密)、简单的 CMS (项目组合构成),基本就搞清这些东西了。

    1. 学习不要用 IDE,补齐对学习没有任何好处,标准库都是要摸来摸去才能记得牢。当然,工作上一定要用补齐。
    2. Python 有 ipdb,但 Go 有更牛的 gdb (内存分布,寄存器状态都可以查看到)

    不过套路还是不一样的
    动态确实很爽,python 吃透之后,js,ruby,php 也懂得 7788 了,但总觉得缺了啥。
    再看看内部实现,syscall 原来这么简单,CPU 原来是这样工作的,妈妈,我再也不怕别人问我基础问题了。
    nuxt
        13
    nuxt  
       2018-03-02 16:55:24 +08:00   ❤️ 1
    goland
    《 The way to go 》
    看 github 开源项目
    造轮子
    xwhxbg
        14
    xwhxbg  
       2018-03-02 17:10:48 +08:00
    楼主,你是不是不会用搜索引擎啊,我帮你翻译一下,你复制粘贴到搜索引擎就好啦

    1.Best golang ide
    2.How to debug golang program

    记得用谷歌啊,不会翻墙用必应的国外搜索,然后用百度翻译翻译过来看吧,我记得 360 浏览器应该有有道翻译插件也能直接浏览器翻译
    zhu327808
        15
    zhu327808  
       2018-03-02 17:23:03 +08:00
    看书
    1. golang tutorial
    2. The Go Programming Language
    3. Go Web 编程

    读源码
    1. cache2go
    2. groupcache
    3. nsq
    JerryCha
        16
    JerryCha  
       2018-03-02 17:55:09 +08:00
    看一眼语法直接写,不学
    mritd
        17
    mritd  
       2018-03-02 18:01:30 +08:00 via iPhone
    表示最近也在学,我的路子就是看语法造轮子,面向谷歌编程
    orm
        18
    orm  
       2018-03-02 18:11:32 +08:00 via iPhone
    vim 就可以装个 go 插件
    cxbig
        19
    cxbig  
       2018-03-02 18:14:47 +08:00   ❤️ 1
    1. JetBrains 家的 Gogland
    2. 一样用 go 命令跑,如果手动输入命令嫌麻烦,可以用 watch,改动文件即触发运行
    chai2010
        20
    chai2010  
       2018-03-02 18:16:22 +08:00   ❤️ 1
    1. 不要用 ide,有高亮和补齐就算完美了,npp 和 vscode 都不错
    2. 调试只能发现错误,无法证明没有错误。对于并发程序调试基本是没卵用,单元测试+日志+静态分析

    顺便安利一把最近刚写的迷你日志库:
    https://github.com/chai2010/logger
    jaycee110905
        21
    jaycee110905  
       2018-03-02 18:23:28 +08:00   ❤️ 1
    菜鸟教程语法+做项目, 用 GoLand
    holulu
        22
    holulu  
       2018-03-02 18:56:15 +08:00   ❤️ 1
    语法特性少到不需要怎么学,将官网的 Effective Go 过一遍或当手册边写边查边理解。
    https://golang.org/doc/effective_go.html
    yanzixuan
        23
    yanzixuan  
    OP
       2018-03-02 22:22:14 +08:00
    @xwhxbg 搜索出来的东西哪有经验人士的言传身教好呢。好比现在公开课这么多,但是教育还不是得从小学生开始读起
    whisper219
        24
    whisper219  
       2018-03-02 22:27:53 +08:00
    GoLand,写个爬虫就入门了,有空多看官方库文档
    fhefh
        25
    fhefh  
       2018-03-02 22:33:06 +08:00
    最近也在学 go
    多写代码 多看项目多谷歌
    wweir
        26
    wweir  
       2018-03-02 22:39:41 +08:00 via Android   ❤️ 1
    学 golang
    第一步:把网络配好
    第二步:放下偏见以及非 C 系语言的使用经验
    第三步:简单看过一遍教程之后,编写一个自己熟悉领域的小 demo,在尝试中学习
    popbones
        27
    popbones  
       2018-03-03 09:38:56 +08:00   ❤️ 1
    一年多前开始钩浪的,先走了一遍官方教程,基本就可以写代码了,然后个人感觉几个要在实践中搞明白的事情:( 1 ) interface 究竟是什么,( 2 ) type 究竟是什么,( 3 ) channel 究竟是什么,( 4 ) go 究竟是怎么处理并发的,( 5 )什么时候用 reflection 利大于弊
    youknowwxy
        28
    youknowwxy  
       2018-03-03 11:19:46 +08:00
    mark
    nanxung
        29
    nanxung  
       2018-03-03 12:41:46 +08:00
    最近用 go 做一个每天十多万并发的接口 然后一个礼拜撸了出来,,,,项目驱动学习最快了
    yuchenyang1994
        30
    yuchenyang1994  
       2018-03-03 12:43:07 +08:00 via Android
    go 还用学?直接上手撸,一周就上手干活,活干多啥都会了
    OpenJerry
        31
    OpenJerry  
       2018-03-03 13:01:05 +08:00
    mark,虽然我现在不学,但是我预感到总有一天我会回来看这个帖子的
    ke1vin
        32
    ke1vin  
       2018-03-03 15:31:23 +08:00
    借楼问 python 怎么快速入门?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2677 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 03:21 · PVG 11:21 · LAX 19:21 · JFK 22:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.