跳转至

Golang简介

Golang 的优势

Go语言保证了既能到达静态编译语言的安全和性能,又达到了动态语言开发维护的高效率,使用一个表达式来形容Go语言:Go=C+Python,说明Go语言既有C静态语言程序的运行速度,又能达到Python动态语言的快速开发。
  • 1)从C语言中继承了很多理念,包括表达式语法,控制结构,基础数据类型,调用参数传值,指针等等,也保留了和C语言一样的编译执行方式及弱化的指针。
  • 2)引入包的概念,用于組织程序结构,Go语言的一个文件都要归属于一个包,而不能单独存在。
  • 3)垃圾回收机制,内存自动回收,不需开发人员管理。
  • 4)天然并发
  • (1)从语言层面支持并发,实现简单
  • (2)goroutine,轻量級线程,可实现大并发处理,高效利用多核。
  • (3)基于CPS并发模型(Communicating Sequential Processes)实现
  • 5)吸收了管道通信机制,形成Go语言特有的管道channel! 通过管道channel,可以实现不同的goroute之间的相互通信。
  • 6)函数返回多个值
  • 7)新的创新:比如切片、延时执行defer等

Golang 执行流程分析

说明:两种执行流程的方式区别
  • 1)如果我们先編译生成了可执行文件,那么我们可以将该可执行文件拷贝到没有go开发环境的机器上,仍然可以运行
  • 2)如果我们是直接 go run go源代码,那么如果要在另外一个机器上这么运行,也需要go 开发环境,否则无法执行。
  • 3)在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以,可执行文件 变大了很多。

Golang 快速开发入门

Go程序开发注意事项(重点)

  • 1)Go源文件以"go”为扩展名。
  • 2)Go应用程序的执行入口是main()方法。
  • 3)Go语言严格区分大小写。
  • 4)G0方法由一条条语句构成,每个语句 后不需要分号(Go语言会在每行后自动加分号),这也体现出Golang的简洁性。
  • 5)Go編译器是一行行进行编译的,因此我们一行就写一条语句,不能把多条语句写在同一行,否则报错
  • 6)Go语言定义的变量或者import的包如果没有使用到,代码不能編译通过。
  • 7)大括号都是成对出现的,缺一不可。

Golang 转义字符

Golang常用的转义字符(escape char)
  • 1)\t:一个制表位,实现对齐的功能
  • 2)\n:换行符
  • 3)\:一个
  • 4)\":一个"
  • 5)\r:一个回车

Golang 注释

// 单行注释(推荐使用)
/*  多行注释 */