老男孩教育专注IT教育10余年,只培养IT技术精英

全国免费咨询电话(渠道合作):400-609-2893

什么是Go语言?Go语言有什么特点?

老男孩IT教育

技术博客

2020年11月30日 14:11

Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。

  Go语言简介

  Go语言是谷歌2009发布的第二款开源编程语言。

  Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。

GO语言开发

  Go语言主要特征

  1、可直接编译成机器码,不依赖其他库,glibc的版本有一定要求,部署就是扔一个文件上去就完成了。

  2、静态类型语言,但是有动态语言的感觉,静态类型的语言就是可以在编译的时候检查出来隐藏的大多数问题,动态语言的感觉就是有很多的包可以使用,写起来的效率很高。

  3、语言层面支持并发,这个就是Go语言最大的特色,可以充分的利用多核,很容易的使用并发。

  4、内置runtime,支持垃圾回收,这属于动态语言的特性之一吧,虽然目前来说GC不算完美,但是足以应付我们所能遇到的大多数情况,特别是Go1.1之后的GC。

  5、简单易学,Go语言的作者都有C的基因,那么Go自然而然就有了C的基因,那么Go关键字是25个,但是表达能力很强大,几乎支持大多数你在其他语言见过的特性:继承、重载、对象等。

  丰富的标准库,Go目前已经内置了大量的库,特别是网络库非常强大。

  6、内置强大的工具,Go语言里面内置了很多工具链,最好的应该是gofmt工具,自动化格式化代码,能够让团队review变得如此的简单,代码格式一模一样,想不一样都很困难。

  跨平台编译,如果你写的Go代码不包含cgo,那么就可以做到window系统编译linux的应用,如何做到的呢?Go引用了plan9的代码,这就是不依赖系统的信息。

  7、内嵌C语言支持,前面说了作者是C语言的作者,所以Go语言里面也可以直接包含C语言代码,利用现有的丰富的C语言库。

  Go语言标准命令解释

  假如你已安装了Go语言环境,你可以在命令行执行go命令查看相关的Go语言命令:

Go is a tool for managing Go source code.
Usage:
    go command [arguments]
The commands are:
    build       compile packages and dependencies
    clean       remove object files
    doc         show documentation for package or symbol
    env         print Go environment information
    bug         start a bug report
    fix         run go tool fix on packages
    fmt         run gofmt on package sources
    generate    generate Go files by processing source
    get         download and install packages and dependencies
    install     compile and install packages and dependencies
    list        list packages
    run         compile and run Go program
    test        test packages
    tool        run specified go tool
    version     print Go version
    vet         run go tool vet on packages
Use "go help [command]" for more information about a command.
Additional help topics:
    c           calling between Go and C
    buildmode   description of build modes
    filetype    file types
    gopath      GOPATH environment variable
    environment environment variables
    importpath  import path syntax
    packages    description of package lists
    testflag    description of testing flags
    testfunc    description of testing functions
Use "go help [topic]" for more information about that topic.

  go env 用于打印Go语言的环境信息。

  go run 命令可以编译并运行命令源码文件。

  go get 可以根据要求和实际情况从互联网上下载或更新指定的代码包及其依赖包,并对它们进行编译和安装。

  go build 命令用于编译我们指定的源码文件或代码包以及它们的依赖包。

  go install 用于编译并安装指定的代码包及它们的依赖包。

  go clean 命令会删除掉执行其它命令时产生的一些文件和目录。

  go doc 命令可以打印附于Go语言程序实体上的文档。我们可以通过把程序实体的标识符作为该命令的参数来达到查看其文档的目的。

  go test 命令用于对Go语言编写的程序进行测试。

  go list 命令的作用是列出指定的代码包的信息。

  go fix 会把指定代码包的所有Go语言源码文件中的旧版本代码修正为新版本的代码。

  go vet 是一个用于检查Go语言源码中静态错误的简单工具。

  go tool pprof 命令来交互式的访问概要文件的内容。

  老男孩教育IT课程,11余年技术沉淀,紧跟技术潮流,10大阶段从入门到专业层层进阶,无论你是否有IT基础,均可轻松学会,成就高薪职业!

本文经授权发布,不代表老男孩教育立场。如若转载请联系原作者。