zoukankan      html  css  js  c++  java
  • [go]go介绍

    go介绍及安装

    Don't communicate by sharing memory, share memory by communicating.
    Concurrency is not parallelism.
    Channels orchestrate; mutexes serialize.
    The bigger the interface, the weaker the abstraction.
    Make the zero value useful.
    interface{} says nothing.
    Gofmt's style is no one's favorite, yet gofmt is everyone's favorite.
    A little copying is better than a little dependency.
    Syscall must always be guarded with build tags.
    Cgo must always be guarded with build tags.
    Cgo is not Go.
    With the unsafe package there are no guarantees.
    Clear is better than clever.
    Reflection is never clear.
    Errors are values.
    Don't just check errors, handle them gracefully.
    Design the architecture, name the components, document the details.
    Documentation is for users.
    Don't panic.
    
    自动gc,只需new即可, 无需关注堆内存释放.
    天然支持并发 - go关键字管理并发
    channel - goroutine通信工具
    多返回值
    
    //设置GOPATH环境变量(1.8后默认就是$HOME/go)
    export GOPATH=$HOME/go
    export PATH=$PATH:$GOPATH/bin
    
    //设置gopath里的目录
    mkdir -p $GOPATH/src $GOPATH/pkg $GOPATH/bin
    
      所有源代码位于 src(比较死板,所有的项目都放这里)
      包对象位于 pkg(go get的包存放)
      编译好的程序位于 bin
    
    • 几个环境变量说明
    // GOROOT go程序安装目录
    // GOPATH1.8之后默认 go path是 `$HOME/go`, vendor管理包时, 项目必须存放这下面才能找到依赖. 也可手动指定.
    
    
    - a. GOPATH是一个环境变量,用来表明go项目的存放路径, go get下载的包都放到了$GOPATH/src下
    - b. GOPATH路径最好只设置一个,所有的项目都放到GOPATH的src目录下
    - c. GOPATH的⽬目录结构介绍
    
    声明: 如果使用go mod管理 gopath对项目放哪里及目录结构划分将变得毫无意义. 唯一的用处是存放第三方依赖 $HOMEpkgmod
    
    • go命令
    go run     快速执行go文件,就像执行脚本一样
    go build   编译程序,生成二进制可执行文件
    go install 安装可执行文件到bin目录(相当于go build+cp)
    
    
    go test 执行单元测试或压力测试
    go env 显示go相关的环境变量
    go fmt 格式化源代码
    
  • 相关阅读:
    【Android】升级ADT 22 引发的错误
    【Android】使用SearchView时软键盘不支持actionSearch的问题
    Mac 升级 OS X 10.8.2 后 VirtualBox 无法启动的问题
    2012年总结
    【Andorid X 项目笔记】魅族照片剪切问题(4)
    【读书笔记】浪潮之巅
    ormlite更改数据库默认位置
    Android实用代码七段(二)
    Android实用代码七段(三)
    【Android】嵌套Fragment无法接收onCreateOptionsMenu事件的问题
  • 原文地址:https://www.cnblogs.com/iiiiiher/p/11965762.html
Copyright © 2011-2022 走看看