Go 语言入门指南:基础语法和常用特性解析 | 青训营

78 阅读4分钟

Go语言入门指南:基础语法和常用特性解析

Go语言是一种开源编程语言,由Google开发,以其简洁性和效率而闻名。本文将为初学者初学者的我自己提供一个笔记记录与参考,希望能帮到后期复习以及总结的时刻。

安装Go

首先,需要在计算机上安装Go。官方网站 golang.org/dl/ 或者goland(IDEA母公司提供的?)都是不错的开发工具,不过具体联合其他工具调试还需更多精力以及搜寻。

Hello World

让我们从经典的Hello World程序开始,先感受感受熟悉Go的基本语法。

package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}
  • package main:每个Go程序都从一个包开始,main包是一个特殊的包,表示这是一个可执行程序。
  • import "fmt":导入了一个名为fmt的包,该包包含了输入输出相关的函数。
  • func main():这是程序的入口点。所有Go可执行程序都从main函数开始执行。

运行这个程序,将在屏幕上看到"Hello, World!"。

基本数据类型

Go语言具有丰富的数据类型,包括整数、浮点数、字符串和布尔值。以下是一些示例:

package main

import "fmt"

func main() {
    // 整数
    var num1 int = 42
    var num2 = 20  // Go可以推断出变量的类型

    // 浮点数
    var pi float64 = 3.14159265359

    // 字符串
    greeting := "Hello, Go!"

    // 布尔值
    isTrue := true

    fmt.Println(num1, num2, pi, greeting, isTrue)
}
  • Go具有自动类型推断功能,因此您可以省略变量的类型,并让Go自动确定它们的类型。
  • 使用:=可以在声明变量的同时进行初始化。

控制结构

Go语言支持常见的控制结构,如条件语句和循环。以下是一些示例:

条件语句

age := 18

if age < 18 {
    fmt.Println("未成年")
} else if age == 18 {
    fmt.Println("刚刚成年")
} else {
    fmt.Println("成年")
}

循环

// for循环
for i := 1; i <= 5; i++ {
    fmt.Println(i)
}

// while循环
count := 0
for count < 5 {
    fmt.Println(count)
    count++
}

// 无限循环
for {
    fmt.Println("无限循环")
}

函数

函数是Go语言的基本构建块之一。以下是一个简单的函数示例:

func add(a, b int) int {
    return a + b
}

func main() {
    result := add(3, 5)
    fmt.Println("3 + 5 =", result)
}
  • add函数接受两个整数参数,并返回它们的和。

结论

当然,还总结了其他的一些特性提供参考

  1. 静态类型和类型推断:Go语言是静态类型语言,但也支持类型推断。这意味着您需要在编译时声明变量的类型,但通常可以省略类型声明,让Go自动推断变量类型。
  2. 并发支持:Go内置了并发编程的支持,使用Go协程(goroutine)可以轻松实现并行性。这使得编写高效的并发程序变得更容易。
  3. 内存管理:Go具有自动垃圾回收(Garbage Collection)机制,开发者无需手动管理内存分配和释放,有助于减少常见的内存错误。
  4. 简洁的语法:Go语言的语法非常简洁和清晰,减少了代码的复杂性,使得代码更易于阅读和维护。
  5. 强大的标准库:Go拥有一个强大而丰富的标准库,涵盖了网络编程、文本处理、加密、图像处理等多个领域,开发者可以轻松使用这些库来加速开发。
  6. 跨平台:Go语言支持多个操作系统和体系结构,使得开发人员能够轻松构建跨平台的应用程序。
  7. 静态链接:Go编译器会将所有依赖的库和资源链接到最终的可执行文件中,创建了独立的可执行文件,无需在目标机器上安装额外的运行时环境。
  8. 快速编译:Go的编译速度非常快,可以快速迭代开发,提高开发效率。
  9. 开源社区:Go有一个庞大的开源社区,提供了大量的工具和库,有助于解决各种问题和需求。
  10. 安全性:Go语言在设计上注重安全性,具有内置的安全性功能,如自动内存管理和安全的并发模型,减少了常见的安全漏洞。

这只是一个简单的Go语言入门指南,涵盖了一些基础语法和常用特性。当然,快速上手以及能够让编写者从其它语言中转换过来很显然就是go已经实现的特性,之后还会根据数据库,网络,架构层以及连接入手编写分享更多的内容,慢慢来吧!


当然,如果您有更多的想法以及评价,欢迎在底下评论区补充提出,感谢!