go的基本东西
- FPM进程
- master,worker
- Gpm
- 协程和线程的联系
- 协程是GO的核心
Go module
- go.mod
Go 的常用命令
- Go run
- Go build
Go 的基本语法
- Struct
- Func
- 指针方法,非指针方法
- 大写public,小写 private
- 作用域 放同一目录
- GO不能循环依赖
- Interface sturct 隐式实现
- 泛型
GO的思想
- Ducklish:类鸭子行为
- 签名:方法名,出参入参
- 继承
- Java 关键字,go 结构
- 设计理念 :Less is more
- FPM进程
FPM(FastCGI Process Manager)是一种通用的 PHP 进程管理器,可以帮助 PHP 应用程序实现更高的并发性和稳定性。在 Go 语言中,也有类似的概念,master-worker 模型的基本思想是将一个任务分成多个子任务,并由多个 worker 协程来并行处理这些子任务。master 协程负责将任务分解、分配给各个 worker 协程,并最终汇总处理结果。worker 协程则负责具体的任务执行工作。这样,整个应用程序便能够更加高效地利用计算资源,并实现更高的并发性。
- Gpm
Gpm(Go Package Manager)是 Go 语言自带的一个包管理工具,用于下载、安装和管理第三方库或框架。Gpm 可以根据项目所需的依赖关系和版本信息,自动下载并管理相应的依赖库,并保证其版本的兼容性和稳定性。
- 协程和线程的联系
协程和线程都是实现并发编程的重要手段。它们的主要区别在于,线程是由操作系统内核进行调度和管理的,而协程则是由程序自身进行调度和管理的。这使得协程拥有更高的性能和更轻量级的特点,可以更好地适应大规模并发场景。
- 协程是GO的核心
协程是 Go 语言的核心特性之一,它使得 Go 能够更好地支持并发编程和异步 IO 等复杂场景。通过使用协程,开发者可以更加方便地实现异步任务处理、非阻塞 IO 等高性能的功能。
- Go module
Go module 是 Go 语言自 1.11 版本引入的一种依赖管理机制,它可以更加方便地管理项目中的依赖关系和版本控制。使用 Go module 可以使得 Go 项目的构建和维护更加规范化、可重复性更高。
- Go 的常用命令
Go 语言提供了一系列常用的命令,用于编译、运行和测试 Go 代码。其中,最常用的命令包括:
- go run:用于编译并运行 Go 代码。
- go build:用于将 Go 代码编译成可执行文件。
- go test:用于运行针对 Go 代码的测试用例。
- Go 的基本语法
Go 语言是一种简洁、高效的编程语言,其基本语法包括:
- Struct:用于定义结构体类型。
- Func:用于定义函数和方法。
- 指针方法和非指针方法:用于定义结构体的方法,并可以选择使用指针类型或非指针类型。
- 大写public,小写 private:用于表示变量、函数和方法的访问权限。
- 作用域:Go 中的作用域是按照代码块划分的,同一目录下的代码块可以互相访问。
- Interface struct 隐式实现:接口可以被任何类型隐式实现。
- 泛型:Go 语言目前还没有实现泛型,因此需要使用其他技巧来实现类似的功能。
- Go 的思想
Go 语言有着独特的设计理念和思想,例如:
- Ducklish:Go 语言中的接口是通过行为来定义,而不是通过类型来定义,这种思想被称为 Duck Typing,即“看起来像鸭子就是鸭子”。这个特点使得 Go 语言的代码更加灵活和易于扩展。
- 签名:Go 语言中函数和方法的签名(包括函数名、参数类型和返回值类型等)非常重要,因为它可以决定函数或方法的可见性和调用方式。
- 继承:Go 语言没有传统意义上的继承机制,但可以通过嵌套结构体来实现类似的功能。
- Java 关键字,go 结构:Go 语言受到了 Java 和 C++ 等传统编程语言的影响,在语法和关键字方面也有很多相似之处。但与此同时,Go 语言也有很多独特的设计和创新。
- 设计理念:Go 语言的设计理念是“Less is more”,即通过简化语言特性和标准库,来提高整个语言的可读性、可维护性和可扩展性。这种理念使得 Go 语言的代码更加清晰、易于理解和维护。
总之,以上介绍了 Go 语言的一些基本入门知识,包括 FPM 进程、master-worker、Gpm、协程和线程的联系、Go module、常用命令、基本语法、思想等内容。掌握这些基本知识可以帮助开发者更加深入地理解和应用 Go 语言,提高自身的技术水平和开发效率。