• 郝林 置顶
    2018-08-10
    有很多读写问归档文件是什么意思。归档文件在Linux下就是扩展名是.a的文件,也就是archive文件。写过C程序的朋友都知道,这是程序编译后生成的静态库文件。
    
     126
  • suke 置顶
    2018-11-27
    就三个环境变量,讲的这么费劲,随便搜一篇都比这文章有质量,既然收费了,能不能对自己的文章负责一些,真水
     9
     97
  • 与狼共舞 置顶
    2018-08-12
    纯技术类文章 ,建议多用图。

    作者回复: 你好,考虑到用图的话,播音员会很难描述。

     1
     38
  • 小巨小巨 置顶
    2018-08-10
    什么是归档文件,归档文件里都是什么?有什么作用。

    作者回复: 请看我置顶的留言。

    
     19
  • Geek_1ed70f 置顶
    2019-01-27
    下午上班时间随便读了一下,感觉有点讲的太散,只吸收了20%,晚上专门花了时间精读几遍 吸收了100%后真的干货满满,以前不懂得原理都能知道了 这是网上博客不会有的工匠级解说
    
     16
  • 第五季节 置顶
    2018-08-10
    工作区是指: 放go的源码目录。
    gopath是指:指向工作区的路径。

    归档文件: 相当于java的jar包。下载到本地私服


    不知道对不对。纯属个人观点。
    展开

    作者回复: 前两个对,归档文件在Linux下就是.a文件,也就是archive文件,是程序编译成功后生成的静态库文件。这跟Java的jar包还不太一样,jar包相当于动态链接库了。

    
     9
  • 江山如画 置顶
    2018-08-14
    对于初学者第一次看确实有些难懂,但是多看几遍后就会发现其实干货满满,我读了好几遍,接触golang也快一年了,但是很多知识点是第一次接触到,感谢郝林老师!

    作者回复: 对你有帮助就好。

    
     7
  • 千年孤独 置顶
    2018-08-10
    如果在面试中让老师来回答“设置'GOPATH有什么意义?”这个问题,除去典型回答

    老师会如何简要明了回答这个问题?

    作者回复: 可以说,为了集中组织代码,以及代码互相引用。当然了,这么说后面试官可能还会让你具体解答。

    
     7
  • xyang 置顶
    2018-08-11
    go语言适合做什么业务,能概述性的罗列讲述下吗

    作者回复: 你好,我会在后边另写文章介绍。

    
     5
  • Harry 置顶
    2018-08-10
    一脸懵逼,并不知道归档文件是啥😄

    作者回复: 请看我置顶的留言。

     1
     5
  • 许明 置顶
    2018-08-10
    ide 我觉得vscode就很好用了,我现在是vscode + glide

    作者回复: 嗯,我也用这种组合。

    
     4
  • 白宇 置顶
    2018-08-11
    请教一下,如何解决下载第三方包失败情况

    作者回复: 你好,这属于是网络问题。

    
     3
  • jians 置顶
    2018-08-10
    看完再结合测试后的疑问:
    在不同项目src中有同名包时,go build, install只会执行gopath中最早发现包的工作区,哪如何编译后面其他工作区中的同名包呢?

    作者回复: 这就需要自己去放置了,或者临时把前面的工作区从gopath中去掉。

    
     3
  • Diviner. 置顶
    2018-08-10
    求解释什么叫归档文件

    作者回复: 请置顶的留言。

    
     2
  • 第五季节 置顶
    2018-08-10
    gopath 的设计类似java 。
    具体的用途是执行命令要用 例如:go run、go install、go get等。
    允许设置多个路径。
    在idea里面的多个project或工具组建都并列放在gopath的src下面。
    例如:go install myProject1
                go install myProject2
    所以老师说的这个归档文件。可以理解成工作空间吗?
    至于老师说的两个问题。
    1:按照代码的执行顺序 从上往下 每个引入的初始化。
    2:引入一下试试就知道了。
    展开

    作者回复: 归档文件的解释请看置顶的留言。

    
     2
  • 有风的林子 置顶
    2018-08-12
    目前还没用到GOPATH包含多个工作区,不知多个目录间的分隔符是什么?空格、冒号、还是分号?如果作者顺便说一下就好了,至少增加一个知识点。😁

    作者回复: 你好,这根据具体的操作系统而定。

     1
     1
  • 时间的奴隶 置顶
    2018-08-12
    归档文件,可以理解为程序的动态链接库文件吗?

    作者回复: 相当于静态链接文件。

    
    
  • 有风的林子
    2018-08-12
    说实话,这开篇的介绍不是太清晰,起步就有些乱,好像写作者没太重视。个人猜测😂

    package是一个重要的关键词,不应当直接翻译成代码包,即便它们是在正文里。可能不译更好,也更准确清晰。

    个人觉得首先应当把工作区的3个基础目录列出来:bin,pkg,src。然后基于此就比较好讲了。

    另外,逻辑上import的路径并不特定表达实际文件系统的路径,它只是一个标识,目前来说对应到src之下的本地文件系统。

    pkg下的*.a直接说成库文件就很清楚了,然后大家就好顺序思考下去,不会被概念疑问阻塞。

    所谓的命令源码文件,如果补充说一下“即包含 main() 入口函数的源码文件”,可能更清楚。

    不好意思,提了不少问题。主要是因为太喜欢go了。

    对于初学者,或许《The Go Programming Language》是最经典的,它也是go语言的发明者参与写的,中文被译成了《Go语言圣经》。

    期待作者后续对go的深度剖析和分享,谢谢!
    展开
    
     186
  • 咖啡色的羊驼
    2018-08-10
    对于作者的两个问题。三个纬度延伸总结回答下:

    1.总执行顺序的角度
    引入的包 -> 当前包的变量常量 -> init()[多个同一包则按照顺序执行] -> main函数

    2.依赖包执行顺序
    被依赖的总是优先执行初始化,一个包只会被初始化一次。
    a引入b,b引入c,则执行顺序c -> b -> a

    3.单个包执行顺序的角度
    总的前提:按照包中源文件名的字典顺序来排序执行。
    当前包排序后的变量常量 -> 排序后的init()
    展开
    
     16
  • Bob.Chen
    2018-08-10
    请问对于之前不太了解go的同学,是否有推荐的入门书可以和专栏配合着看?
    
     15
我们在线,来聊聊吧