编程笔记共31篇 第2页
18.创建HTTP服务器-四曲博客

18.创建HTTP服务器

通过Hello World Web服务器宣告你的存在 package main import( "net/http" ) func helloWorld(w http.ResponseWriter,r *http.Request){ w.Write([]byte("Hello world\n"))...
16.调试-四曲博客

16.调试

日志 日志能够帮助程序员来查找问题与分析问题 package main import "log" func main(){ //输出一条日志信息 log.Printf("This is a log message") } // 2021/01/28 08:51:...
15.测试和性能-四曲博客

15.测试和性能

测试:软件开发最重要的方面 单元测试 单元测试针对一小部分代码,并独立地对它们进行测试。通常,这一小部分代码可能是单个函数,而要测试的是其输入和输出。在确认程序最小的构建按期望的方式...
14.Go语言命名约定-四曲博客

14.Go语言命名约定

使用gofmt 为了确保按要求的约定设置一Go代码的格式,Go提供了gofmt,这个工具的优点在于,让你甚至都无须了解代码格式设置约定,通过不断地学习如何设置代码格式,你自然而言地就会遵循代码格式...
13.使用包实现代码重用-四曲博客

13.使用包实现代码重用

Go程序以package语句打头,main包是一种特殊的包,其特殊之处在于不能导入。对main包的唯一要求是,必须声明一个main函数,这个函数不接受任何参数且不返回任何值,简而言之,main包是程序的入...
12.通道简介-四曲博客

12.通道简介

通道通过收发消息,使得能够以推送方式协调并发事件,事件发生时,可将触发的消息推送给接收者。使用共享内存时,程序必须检查共享内存。在变化频繁的并发编程中,很多人都认为使用消息是一种更...
11.使用Goroutine-四曲博客

11.使用Goroutine

阻塞和非阻塞代码 模拟阻塞的函数调用 package main import ( "fmt" "time" ) func slowFunc(){ fmt.Println("begin") time.Sleep(time.Second * 2) fmt.Println...
10.处理错误-四曲博客

10.处理错误

错误处理及Go语言的独特之处 package main import ( "fmt" "io/ioutil" ) func main(){ file,err := ioutil.ReadFile("foo.txt") if err != nil { fmt.Println(e...
8.创建方法和接口-四曲博客

8.创建方法和接口

使用方法 type movie struct { Name string Rating float32 } #m *movie表示方法的接受者 func (m *movie) summary() string{ //code } package main import "fmt" type person struc...
7.使用结构体和指针-四曲博客

7.使用结构体和指针

结构体是什么 type Movie struct { Name string Rating float32 } 关键字type指定一种新类型 将新类型的名称指定为Movie 类型名右边是数据类型,这里为结构体 在大括号内,使用名称和类型指定了...
6.数组、切片和映射-四曲博客

6.数组、切片和映射

使用数组 var chesses [2]string //数组赋值 chesses[0] = "Mariolles" //打印数组元素 fmt.Println(chesses[0]) 使用关键字var声明一个名为chesses的变量 将一个长度为2的数组赋给这...
5.控制流程-四曲博客

5.控制流程

使用IF语句 package main import "fmt" func main(){ b :=true if b { fmt.Println("hello") } } //hello 使用else语句 package main import "fmt" func main(){...