Go语言入门指南学习笔记 | 青训营

54 阅读3分钟

Go语言是一种开源的编程语言,它的设计目标是提供一种简单、高效、安全的编程语言,适用于大规模的软件开发,灵感来自C语言,但它摒弃了C语言的一些复杂性和不安全性,并添加了一些现代化的特性。今天我们就从基础语法与常用特性来说说自己的看法。

一、基础语法

1.变量声明和赋值

变量声明是在程序中创建一个变量并指定其类型,而赋值是给变量赋予一个具体的值。

在大多数编程语言中,变量声明通常包括变量的名称和类型。例如,在C语言中,可以使用以下语法声明一个整数变量:int num;这将创建一个名为 num 的整数类型变量。

然后,可以使用赋值操作符将一个值赋给这个变量:num = 10;这样,变量 num 的值就被赋为了10。当然,在有些编程语言也允许在声明变量的同时进行赋值。例如:int num = 10

个人认为,变量的声明与赋值对我们代码编写而言,相当于我们在建筑过程中用到的砖,没有变量声明与赋值,代码无法编写,我们的算法也无法体现,成型。

  1. 控制流程

Go语言支持常见的控制流程语句,如 if 、 for 和 switch

对于这些,个人认为相对于建筑物里面的钢筋结构,或者说人体的骨骼,由不同的条件语句,判断语句来构成我们整个代码,实现我们的算法,它们起到了支撑作用。

3.函数定义和调用

在编程时,我们会将能够实现一部分功能的代码定义成一个函数,方便直接拿来调用,而且显得有条理,在Go语言中,我们可以使用 func 关键字来定义函数,并使用函数名加括号进行调用。

如果说前面两个构成了基础的代码编写的要素,那么函数定义和调用相当于一个工具库,当我们有某种需要时,在以前两种基础语法上编写成具有某种功能的代码,随后我们可以根据需要直接调用即可,而且具有普适性,即在同一编译环境下,我们可以将该函数调用到不同工程中。

二、常用特性

1.并发编程

并发的含义是多个任务在同一个 CPU 核上,按细分的时间片轮流(交替)执行,从逻辑上来看那些任务是同时执行。Go语言内置了轻量级的协程(goroutine)和通信机制(channel),使得并发编程变得简单而高效。可以使用 go 关键字来创建一个协程,并使用 chan 关键字来声明一个通道。

并发编程充分利用了多核CPU的计算能力,在现在动不动就要求百万级甚至千万级的并发量的系统重,并发编程是开发高并发系统的基础,并且更能吻合复杂业务模型,比串行程序更适应业务需求。

2.错误处理

错误处理功能是衡量编译器性能的重要方面,它在帮助程序员尽快修改程序方面起到了非常重要的作用。Go语言通过返回值来处理错误,通常将错误作为函数的最后一个返回值。我们可以使用 error 类型来表示错误,并使用 nil 来表示无错误。

关于这个特性,当我们编写的代码较少时,我们可以忽略该特性,但是当我们编写的代码有上万甚至十万百万时,错误处理的特性可以大大减少我们查询bug的时间,在工程上是一种非常常用的特性。