区块链 | Distributed Ledger Technology我爱编程

【Go语言】编程系列 - 初识 Go语言-1

2018-06-02  本文已影响206人  水瓶座男生

前言:为什么我们需要一门新语言

第 1章 初识 Go语言

1.2 语言特性

1.2.1 自动垃圾回收
1.2.2 更丰富的内置类型
1.2.3 函数多返回值

package demo

func getName()(firstName, middleName, lastName, nickName string){  
    return "May", "M", "Chen", "Babe" 
} 

1.2.4 错误处理
1.2.5 匿名函数和闭包
f := func(x, y int) int {     return x + y  }
1.2.6 类型和接口
type Bird struct {  ... } 
 
func (b *Bird) Fly() {         // 以鸟的方式飞行 }
type IFly interface {  Fly() } 
func main(){
    var fly IFly = new (Bird)
    fly.Fly()
}
1.2.7 并发编程
package main

import "fmt"

func sum(values [] int ,resultChan chan int){
    sum:=0
    for _,value:= range values {
        sum += value
    }
    resultChan <-sum //将计算结果发送到channel中
}

func main() {
    values:= [] int{1,2,4,5,6,7,8,9,10}
    
    resultChan :=make (chan int ,2)
    go sum(values[:len(values)/2],resultChan)
    go sum(values[len(values)/2:],resultChan)

    sum1, sum2 := <-resultChan, <-resultChan //接受结果
    fmt.Println("results:",sum1,sum2,sum1+sum2)
}
1.2.8 反射
1.2.9 语言交互性

1.3 第一个 Go程序

func 函数名(参数列表)(返回值列表) {   // 函数体 } 

func Compute(value1 int, value2 float64)(result float64, err error) {  // 函数体 }

1.4开发工具选择

1.5 工程管理

1.6 问题追踪和调试

1.6.1 打印日志
1.6.2 GDB调试
1.7.1 邮件列表
1.7.2 网站资源

参考资料:《GO语言编程》 The Go Programming Language 许式伟@编著

上一篇 下一篇

猜你喜欢

热点阅读