Golang简介与环境搭建

作者: 丶沙工 | 来源:发表于2016-05-23 12:51 被阅读474次

    Golang简介

    • 来自贝尔实验室的两位大牛罗布·派克,肯·汤普逊与Google的罗伯特·格瑞史莫,2007年开始设计的一种编译型,可平行化,并具有垃圾回收功能的编程语言。
    • 罗布·派克(Rob Pike)1980年奥运会射箭的银牌得主(超级厉害了)
    • C语言之父肯·汤普逊(Kenneth Lane Thompson)
    • 罗伯特·格瑞史莫(Robert Griesemer)曾在Java编译器方面的工作
    • Ian Lance TaylorGithub
    • Russ Cox
    • Go语言是基于Inferno操作系统所开发的。
    • Go语言于2009年11月有Google正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后追加Windows系统下的实现。
    • Go语言和云计算——洪峰老师讲创客道
    • 贝尔实验室
    • Go语言的特点在wiki里有介绍

    语言

    • Go程序可以从3行到数百万行,它被写入到一个或多个文本文件扩展名“.go”;例如,hello.go。你可以用“vi”,“vim”或任何其他文本编辑器来编写Go程序到到文件中。
    • go build hello.go可以编译生成一个二进制的hello linux没有后缀
    • go run hello.go 可以直接执行

    环境搭建

    • 安装
    • 新立安装版本不是最新的
      sudo apt-get install golang
      -到官网去下需要的安装包
    wget https://storage.googleapis.com/golang/go1.6.2.linux-amd64.tar.gz
    tar -C /usr/local -zxf go1.6.2.linux-amd64.tar.gz
    
    • 这里下载

    • 本地路径(/usr/local/go)放在这个路径下就不用设GOROOT变量了

    • 卸载

    • 卸载golang-go
      sudo apt-get remove golang-go

    • 卸载golang-go及其依赖
      sudo apt-get remove --auto-remove golang-go

    • 卸载golang-go并删除其本地和配置文件
      sudo apt-get purge golang-go

    • 卸载golang-go及其依赖并删除其本地和配置文件
      sudo apt-get purge --auto-remove golang-go

    • 环境变量 /etc/profile

    # Golang
    export GOPATH=/home/lbb/work/gopackage
    export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
    

    (~/work/go)这个目录里放了第三方包和一些开源学习的项目
    (~/work/go/src/go)这个目录里放了自己的代码
    Linux系统安装到/usr/local/不用设置$GOROOT,其他路径要设置

    Sublime Text3

    • 搜索并安装goSublime插件安装方法
    • crtl+b可以调出命令行,来编译执行go代码

    配置编译环境

    用 Sublime 开发 golang 的环境很简单,
    需要安装一个

    • 代码格式化 GoImports
      GoImports需要goimports包
    go get golang.org/x/tools/cmd/goimports
    

    但是在一些(1.5版以前的)插件和项目中好像还是掉的这里可以拷贝一份或者建个软链接
    preferences->package settings->gosublime->setting-user中添加如下内容

    {
        "fmt_cmd": ["goimports"],
        "env": {
            "GOPATH": "D://work//go-work",
            "GOROOT": "C://Go"
        },
        "font_size": 12,
        "highlight_line": true,
        "highlight_modified_tabs": true,
        "ignored_packages":
        [
            "Vintage"
        ],
        "soda_classic_tabs": true,
        "soda_folder_icons": true,
        "tab_size": 4,
        "translate_tabs_to_spaces": true,
        "update_check": false,
        "word_wrap": true
    }
    
    {
       "working_dir": "$file_path",
       "cmd": ["go", "build", "$file_name"],
       "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
       "selector": "source.go",
       "variants": [{
           "name": "Run",
           "shell_cmd": "go run \"$file_name\""
       }]
    }
    
    • go get github.com/nsf/gocode
    • go get github.com/slene/margo

    VIM

    Atom

    相关文章

      网友评论

        本文标题:Golang简介与环境搭建

        本文链接:https://www.haomeiwen.com/subject/eflqrttx.html