您的位置:首页 > 编程语言 > Go语言

go 简介与包

2017-06-12 14:40 120 查看

简介

Go语言是一种新的语言,一种并发的、带垃圾回收的、快速编译的语言。它具有以下特点:
1.它可以在一台计算机上用几秒钟的时间编译一个大型的Go程序。
2.Go语言为软件构造提供了一种模型,它使依赖分析更加容易,且避免了大部分C风格include文件与库的开头。
3.Go语言是静态类型的语言,它的类型系统没有层级。因此用户不需要在定义类型之间的关系上花费时间,这样感觉起来比典型的面向对象语言更轻量级。
4.Go语言完全是垃圾回收型的语言,并为并发执行与通信提供了基本的支持。
按照其设计,Go打算为多核机器上系统软件的构造提供一种方法。
Go语言是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。它也打算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生了。
(引用自百度百科)

安装配置

1 根据操作系统选择不同的安装包

下载地址 https://golang.org/dl/
 

1 // calculator
2 package main
3
4 import (
5     "day1/calc"
6     "fmt"
7 )
8
9 func main() {
10     var pipe chan int
11     pipe = make(chan int, 1)
12     go calc.Add(100, 200, pipe)
13     go calc.Sub(100, 200, pipe)
14     sum := <-pipe
15     sub := <-pipe
16     fmt.Println(sum, sub)
17 }


calculator

1 和python一样,把相同功能的代码放到一个目录,称之为包

2 包可以被其他包引用

3 main包是用来生成可执行文件,每个程序只能有一个main包

4 包主要的用途是提高代码的可复用性

5 一般go项目路径说明

/project/src/ 源文件

bin/ 可执行文件

vendor/ 第三方文件

pkg/ 静态库

6 Go中如果函数名的首字母大写,表示该函数是公有的,可以被其他程序调用,如果首字母小写,该函数就是是私有的,因此我们只能调用其他包文件中的公有函数

7 包的别名

import (
f "fmt"
)

func main() {

n := 10
for i := 0; i <= n; i++ {

f.Printf("%d+%d=%d\n", i, n-i, n)
}

}


8 每个源文件都可以包含一个init函数,这个init函数自动被go运行框架调用

// main
package main

import (
"fmt"
)

func init() {
fmt.Println("----initiation----")
}


9 只初始化包,并不引用

// main
package main

import (
_ "path/external_func"
)

func init() {
fmt.Println("----initiation----")
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: