Go语言简述linux
Go语言站点web
Go基础环境搭建(linux&windows)编程
hello word程序windows
Go语言特性并发
Go命令介绍异步
特征:ide
语法简单:语法标准比较严格,适合开发人员短期高效的服务端开发。函数
并发模型:Goroutine是Go最显著的特征,使用类协程的方式来处理并发,搭载channel实现CSP模型高并发
内存分配:Go选择tcmaclloc来实现高并发的内存管理和分配工具
垃圾回收:防止出现OOM的坑
静态连接:简化了部署和发布操做,极大程度上下降了代码发布的依赖关系
标准库:功能完善的标准库,有利于下降学习成本
工具链:不管是编译,格式化,错误检查,帮助文档和对应的测试支持都比较完善
总结:
go语言做为一个现代化的开发语言,利用其高并发的特性,有利于实现服务端开发;再结合自身的语法规范性上,能够更好的为API的开发提供更好的帮助;做为一种编译性开发语言。在web开发方面还存在着必定的高效性差距;然而在经过同步方式封装异步概念来更好的处理并发,因此更适合如今的服务端开发。
export GOROOT=$PATH:/path/to/go/ export PATH=$PATH:$GOROOT/bin/ export GOPATH=/home/user/project/go
Go是强类型语言,复用的最小单位是package(包)
Go命令:
go run 快速运行go文件,就像执行脚本同样
go build 编译程序,生成二进制可执行文件
go install 安装可执行文件到bin目录
go test 执行单元测试或压力测试 go test -v 详细
go env 显示go相关的环境变量
go fmt 格式化源代码 ,字符串只能用双引号
Go须知:
package main 全部的入口必须是main 函数 , 不须要传参数,和返回值
package cacl是一个库
func函数 是关键字,
GOPATH 工做区,全部项目都是在工做区,GOPATH路径最好只设置一个
若是要使用包里的一个文件,那必须把这个包都导入
import 中使用别名 是在 包名前面 在一个自定义字母就行
go 源码按package进行管理,而且package要放到非注释的第一行
一个程序只有一个main包和一个main函数, main函数是程序的执行入口!!
单行注释//, 多行注释 /* 内容 */
Go编程基础须知:
类型必须在变量后面 : 自动会更根据后面的类型,给前面变量赋值类型
定义变量 var sum int --> sum就是变量,int 是类型
有个更简易的变量赋值方法 := 声明变量而且赋值
11
Go代码:
func Add(a int,b int) int { return a + b } //求差 func Sub(a int,b int) int { return a - b } //多返回值混合运算 func Calc(a int,b int) (int,int) { sum := a + b sub := a - b return sum,sub }