0
点赞
收藏
分享

微信扫一扫

快速开始go程序(二)


Go语言提供了完善的标准库,标准库提供了构建实际的基于Web和基于网络的程序所需的所有核心库。

1.go程序架构

    在所有不同的数据源中搜索数据。

    

快速开始go程序(二)_github


    这个程序分成多个不同步骤,在多个不同的 goroutine 里运行。从主goroutine开始,一直到执

    行搜索的goroutine和跟踪结果的goroutine,最后回到主goroutine。整个项目的结构:

    

快速开始go程序(二)_github_02


2.程序入口main.go

package main

import (
"log"
"os"
_ "github.com/goinaction/code/chapter2/sample/matchers"
"github.com/goinaction/code/chapter2/sample/search"
)

// init 在 main 之前调用
func init() {
// 将日志输出到标准输出
log.SetOutput(os.Stdout)
}

// main 是整个程序的入口
func main() {
// 使用特定的项做搜索
search.Run("president")
}

    2.1Go程序两个特征:
        第一个特征是声明的名为main的函数。在构建可执行文件时需要找到这个已经声明的main函
        数,把它作为程序的入口。第二个特征是有一个main包。main函数保存在名为main的包里,
        否则将不会生成可执行文件。
    2.2Go语言的每个代码文件都属于一个包,一个包定义一组编译过的代码,包的名字类似命名空间
        ,可以用来间接访问包内声明的标识符。这个特性可以把不同包中定义的同名标识符区别开。    
    2.3关键字import就是导入一段代码,让用户可以访问其中的标识符,如类型、函数、常量和接口。
    2.4读者可能注意到导入matchers包的时候,导入的路径前面有一个下划线,代码如下:
        _ "github.com/goinaction/code/chapter2/sample/matchers"
       这个技术是为了让Go语言对包做初始化操作,但是并不使用包里的标识符。
    2.5程序中每个代码文件里的 init 函数都会在 main 函数执行前调用。

举报

相关推荐

0 条评论