zoukankan      html  css  js  c++  java
  • Go语言 1入门

    文章由作者马志国在博客园的原创,若转载请于明显处标记出处:http://www.cnblogs.com/mazg/         

    Go学习群:415660935

    1.1 编译环境及开发工具

    1.1.1 Go语言编译器

    下载地址:http://liteide.org/cn/doc/install/

    由于Go语言支持WindowsmacLinux等主流操作系统,所以我们需要根据操作系统选择不同的安装包文件。以win10 64位操作系统为例,选择的安装包文件为:go1.8.3.windows-amd64.msi。点击默认安装即可。

    接下来,配置环境变量GOPATH。右击此电脑选择属性,然后选择左边列表中的高级系统设置,接下来在弹出的对话框中点击环境变量按钮。在系统变量中,点击新建按钮。在弹出的对话框中,变量名写GOPATH,变量值写设置的Go项目路径。

     Go项目路径下约定有三个子目录:

    1) src 存放源代码(比如:.go .c .h .s等)

    2) pkg存放编译后生成的文件(比如:.a

    3) bin 存放编译后生成的可执行文件(为了执行方便,可以把此目录加入到 path 环境变量中)

     Go常用的三个命令:

    1. go run:直接运行程序
    2. go build:编译生成可执行程序
    3. go get:获取远程包(需提前安装 githg

    1.1.2 LiteIDE

    下载地址:http://liteide.org/cn/

    LiteIDE是一款简单,开源,跨平台的Go IDE

    同样以win10 64位操作系统为例,选择的安装包文件为:liteidex32.2.windows-qt5.zip。直接解压,在其中的bin目录下,点击liteide.exe即可运行。

    重新设置GOPATH后,liteIDE不会自动更新,也需要重新设置查看”->”编辑当前环境Go工具对包的查找从src目录开始。

    1.1.3 Git工具

    下载地址:https://git-scm.com/download/win

    win10 64位操作系统为例,选择的安装包文件为:Git-2.8.1-64-bit.exe。  

    使用Git工具获取Go的远程包。Git是一款免费、开源的分布式版本控制系统,方便的从https://github.com/获取源代码。gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub

    1.2 第一个Go程序

    以传统的Hello World”为例,开始Go语言编程之旅。

     

    package main
    
    import "fmt"
    
    func main() {
    fmt.Println("Hello 世界")
    }
    

     

     代码解读:

    每个Go源文件都以一条package声明语句开始,表示该源文件属于哪个包。包类似于其它语言的库或模块。这个例子为package mainmain包比较特殊,它定义了一个独立可执行的程序,而不是库。

    紧接着是一系列导入包语句,用于导入该程序所依赖的包。由于本示例程序用到了Println()函数,所以需要导入该函数所属的fmt包。需要注意的是,不能包含在源代码中没有用到的包,否则Go编译器会报编译错误。

    main包,有并且仅有一个main( )函数,是Go程序执行的入口。在main()函数中调用Println()函数打印输出 Hello,世界。我们特意使用了中文“世界”,这意味着Go语言原生支持Unicode,可以处理全世界任何语言的文本。另外,Go语句不需要加分号表示语句结束。在Go语言中,所有函数以关键字func开头。一个常规的函数定义包含以下部分:

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

        //函数体

    }

     main函数既没有参数,也没有返回值。

    Go代码注释与C语言保持一致,同时支持以下两种用法:

    //行注释

    /*

    块注释即多行注释

    */

    演示go build go install go run命令,并比较其区别。

    go build 编译包,并且在当前目录下生成可执行文件

    go run 直接运行,但命令后跟的是文件,而不是目录()

    go install 会在src同级目录下的package目录下生成.a包文件,在同级的bin目录生成可执行文件。这样可以在任意目录直接执行程序。

    1.3 项目管理

    以一个简单的计算器程序为例演示如何使用liteIDE开发和管理项目。如果需要管理多个项目,个人认为多个项目共用一个src目录比较方便。使用liteIDE打开$GOPATH目录。在src目录下创建计算器程序项目,目录组织如下:

    godev

      |->bin

      |->pkg

     |->src

         |->其它项目...

         |->mycalc

              |->main

                  |->main.go

              |->math

                  |->add.go

                  |->sub.go

              |->math2

                  |->mul.go

    main.go

    package main
    
    import (
        "fmt"
        "mycalc/math"
        "mycalc/math2"
    )
    
    func main() {
        fmt.Println("请输入两个整数:")
        var a, b int
        fmt.Scanf("%d %d", &a, &b)
        fmt.Println(a, "+", b, "=", math.Add(a, b))
        fmt.Println(a, "-", b, "=", math.Sub(a, b))
        fmt.Println(a, "*", b, "=", math2.Mul(a, b))
    
    }

    add.go代码清单

    package math
    
    func Add(a int, b int) int {
        return a + b
    }

    sub.go代码清单

    package math
    
    func Sub(a int, b int) int {
        return a - b
    }

    mul.go代码清单  

    package math2
    
    func Mul(a int, b int) int {
        return a * b
    }

    注意:需要被外部使用的AddSubMul函数首字母大写。

  • 相关阅读:
    利用border-radius画椭圆
    关于使用svg构建六边形蜂巢列表的方式
    JavaScript拖拽效果的原理及实现
    逆战班-JS的形参与实参
    前端面试&笔试汇总
    less学习---less的混合(mixin)
    less学习---less的嵌套规则
    less学习----less变量
    vue-cli3实现将数据导出为Excel表
    js中apply和call方法浅析
  • 原文地址:https://www.cnblogs.com/mazg/p/8275131.html
Copyright © 2011-2022 走看看