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

怎么转 golang?

  •  
  •   gamesover · 2021-09-07 07:57:05 +08:00 · 4497 次点击
    这是一个创建于 1178 天前的主题,其中的信息可能已经有所发展或是发生改变。
    打算面向工资编程,以前是 python flask 的
    怎么转 go 呢?
    35 条回复    2021-09-09 17:56:34 +08:00
    wd
        1
    wd  
       2021-09-07 08:02:05 +08:00 via iPhone
    找个教程开始学呗,你怎么学会 python 的?
    ampedee
        2
    ampedee  
       2021-09-07 08:15:27 +08:00 via Android
    小公司内部申请转组转的,这应该是最平滑的方式了,别的难度都挺大的
    love2020
        3
    love2020  
       2021-09-07 08:46:36 +08:00
    就酱转
    ming159
        4
    ming159  
       2021-09-07 08:57:46 +08:00   ❤️ 1
    在这里我一直感谢我之前的老板,不断的强调:"语言只是工具,核心是动态模型". 如果理解这句话,从 Python 转 Go, 一周就可以上手了.

    语言所具备的几个基本点:
    1. 变量
    2. 类型
    3. 条件分支 /循环
    4. 函数
    这些内容,只要会了一门语言,学一门新语言应该说是 1,2 天熟悉一下就可以了. 即便一下子记不住,后续回过头来查一下即可.
    可能需要花点时间的也就是 协程 ,但是如果你多线程和异步的概念很扎实的话,协程也很简单. 而多线程,异步就是所谓的 "动态模型" 而这部分内容是与计算机语言无关的.
    Victor215
        5
    Victor215  
       2021-09-07 08:58:42 +08:00
    一边写,一边骂骂咧咧,然后就学会写 go 了。(一个写了 7 年 python,刚转 go 的家伙)
    hewiefsociety
        6
    hewiefsociety  
       2021-09-07 08:59:49 +08:00
    找一个 Go 的工作,不会就谷歌,几个小时就学会了
    xuanbg
        7
    xuanbg  
       2021-09-07 09:03:05 +08:00
    6 楼说的很对,找个 go 的工作就完了。
    ming168
        8
    ming168  
       2021-09-07 09:04:11 +08:00
    +1
    yin1999
        9
    yin1999  
       2021-09-07 09:10:26 +08:00 via Android   ❤️ 1
    go 语言真的很好上手,难一点的只有协程和 channel,然后推荐上手就启用 go modules,原来的包管理方式一言难尽吧。基础的语法啥的我看的是[go tour]( https://tour.go-zh.org/welcome/1),GitHub 上门有开源《 The way to go 》,这个比较详细,看起来费一些工夫。
    yin1999
        10
    yin1999  
       2021-09-07 09:13:07 +08:00 via Android
    @yin1999 后面可以看一下 go 内置的一些包,比如:context,可以学到很多
    cocoabeans
        11
    cocoabeans  
       2021-09-07 09:13:28 +08:00
    如果狗有螃蟹的工具链多好
    janxin
        12
    janxin  
       2021-09-07 09:18:44 +08:00
    看看语法就可以了啊,剩下的就是试着把手上的小项目重写成 Go
    vevlins
        13
    vevlins  
       2021-09-07 09:21:36 +08:00
    招 go 的也不会要求你会 go,就这么简单
    HelloWorld556
        14
    HelloWorld556  
       2021-09-07 09:23:03 +08:00
    刚学三天,已经爱上了
    chaleaoch
        15
    chaleaoch  
       2021-09-07 09:28:21 +08:00
    python 转 go 最大的难点是静态类型.
    别的都还好.
    darkengine
        16
    darkengine  
       2021-09-07 09:30:14 +08:00
    #12 说得对,把现有的 python 项目用 go 重写一遍,就会了。
    shawnsh
        17
    shawnsh  
       2021-09-07 09:34:28 +08:00 via Android
    @vevlins 对,但是工资不会高
    nfyig
        18
    nfyig  
       2021-09-07 09:56:30 +08:00
    为啥要转, python 现在排名第二, go 都多少了..., 而且 go 的工资也不高...
    yuchenyang1994
        19
    yuchenyang1994  
       2021-09-07 10:32:32 +08:00
    2 个星期就能学会的东西
    pkoukk
        20
    pkoukk  
       2021-09-07 11:16:03 +08:00
    @nfyig
    排名靠前的都是红海,新语言的好处大家都还比较菜,好好干出头的机会多些。
    如果写 java,得写个啥东西能超越 spring ?
    pkoukk
        21
    pkoukk  
       2021-09-07 11:17:34 +08:00
    @ming159
    这就是你写啥都像 java 的原因?手动狗头
    生态也是很重要的一环,不同语言的设计逻辑还是有差异的。不同语言各有适用的场景
    cloudfstrife
        22
    cloudfstrife  
       2021-09-07 11:19:34 +08:00
    最快的路线: 买本 Go 语言的书,边看边练 -> 找一些练习题 -> 写一个小的项目。
    sunznx
        23
    sunznx  
       2021-09-07 12:31:52 +08:00
    我是 php 转 go,看了 go 圣经,然后做完了 mit-6.824
    fiypig
        24
    fiypig  
       2021-09-07 12:36:21 +08:00 via iPhone
    我那时候内部转的,除了这个想平滑转都比较难,除非第一语言比较熟练那种
    tonghuashuai
        25
    tonghuashuai  
       2021-09-07 12:38:34 +08:00
    找个教程看一遍,然后开始写!代!码!
    lrs
        26
    lrs  
       2021-09-07 12:41:39 +08:00 via Android
    我也想转 go, 难点还是在找工作上,没有相关工作经验上不好找
    via
        27
    via  
       2021-09-07 12:50:12 +08:00 via iPhone
    应该是问怎么找 go 的工作吧
    mrgeneral
        28
    mrgeneral  
       2021-09-07 13:57:36 +08:00
    1. 语法层面比较简单,Go 的关键字很少,基本语法掌握很快,用来刷题能快速熟悉。
    2. 语言特性就很杂了,建议先重点了解 channel 的用法,github 上很多。
    3. 项目实战,这个还是得在实战中模式,因为设计的东西不仅是语言层面了,需要结合实际需要去入手。
    cassyfar
        29
    cassyfar  
       2021-09-07 14:11:20 +08:00
    之前主要写 java 。也是找了份 go 的工作(找之前不知道是写 go ),然后边工作边学习,大概 2 周出活。感觉如果真的要花点儿时间学的话大概两方面,一是 go routine,sync 和 channel ;二是 go module 。
    GavinG
        30
    GavinG  
       2021-09-08 10:34:17 +08:00
    语言都是工具,找个项目用 golang 重构下试试,先实践,边实践边深入
    ming159
        31
    ming159  
       2021-09-09 08:43:10 +08:00
    @pkoukk 或许你根本不理解什么是 "计算机语言" 手动狗头
    1. 你认为的生态如何重要了?

    2. 那 Go 语言的设计逻辑与 Java 差别在哪里了?

    3. 各有适应场景又如何解释?

    请赐教
    sunkai0609
        32
    sunkai0609  
       2021-09-09 13:32:40 +08:00
    @sunznx 老哥花了多久
    ace12
        33
    ace12  
       2021-09-09 13:39:13 +08:00 via Android
    找工作直接转
    cco
        34
    cco  
       2021-09-09 14:50:32 +08:00
    自学完不用,约等于没学。最好的办法就是转写 go 的部门,如果没有就找写 go 的公司。
    DamonLin
        35
    DamonLin  
       2021-09-09 17:56:34 +08:00
    本质还是写业务,看看直接上手 curd
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3087 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:48 · PVG 21:48 · LAX 05:48 · JFK 08:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.