go语言学习笔记1 Go开发环境
什么是Go?
Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡的一门编程语言。
Go的主要特点有哪些?
* 类型安全 和 内存安全
* 以非常直观和极低代价的方案实现高并发
* 高效的垃圾回收机制
* 快速编译(同时解决C语言中头文件太多的问题:去除掉实际上没有用的头文件,如果头文件没有用会跳出编译异常)
* 为多核计算机提供性能提升的方案
* UTF-8编码支持
Go存在的价值是什么?
Go在谷歌:以软件工程为目的的语言设计 http://blog.jobbole.com/36480/
Go是记事本编程吗?
包括VIM、IDEA、Sublime Text、Eclipse等IDE均已支持
Go目前有多少实际应用和资源?
* 全球最大视频网站Youtube(谷歌)
* 七牛云存储以及旗下网盘服务(Q盘)
* 爱好者开发的Go论坛及博客
* 已在服务端使用Go开发的著名企业:谷歌、盛大、七牛、360
* 其他开源项目,可以在这三个网站上找到:go-wiki,GoDoc,Go Language Resources
Go发展成熟了吗?
作为一门2009年才正式发布的编程语言,Go是非常年轻的,因此不能称为一门成熟的编程语言,但开发社区每天都在不断更新其核心代码,给我们这些爱好者很大的学习和开发动力。
Go的爱好者多吗?
以Google Group为主的邮件列表每天都会更新10到20贴,国内的Go爱好者QQ群和论坛每天也在进行大量的讨论,因此可以说目前Go爱好者群体足够壮大。
安装Go语言
* Go源码安装
* Go标准包安装 https://golang.org/doc/install?download=go1.6.3.windows-amd64.msi
* 第三方安装
配置环境变量GOROOT为Go的安装位置,为这里为D:\Program Files\Go
在环境变量Path中添加:%GOROOT%\bin
添加环境变量GOPATH(下面会介绍)
Go环境变量与工作目录(命令行输入go env可以看到Go的环境变量们)
* bin(存放编译后生成的可执行文件)
* pkg(存放编译后生成的包文件)
* src(存放项目源码)
Go命令
在命令行或终端输入go即可查看所有支持的命令
Go常用命令简介
* go get:获取远程包(需提前安装git或hg)
* go run:直接运行程序
* go build:测试编译,检查是否有编译错误
* go fmt:格式化源码(部分IDE在保存时自动调用)
* go install:编译包文件并编译整个程序
* go test:运行测试文件
* go doc:查看文档(CHM文档)(比如我要查看一个fmt包,我就输入:go doc fmt)
输入godoc -http=:8080可以在本地localhost:8080打开参考网页。
Windows搭建Sublime Text 3 + Go开发环境:http://blog.csdn.net/cyxcw1/article/details/10329481