Go语言圣经

  开发

c8CsUO.jpg
The Go Programming Language
下载

目录
1.Tutorial
1.1.Hello,World
1.2.Command—Line Arguments
1.3.Finding Duplicate Lines
1.4.Animated GIFs
1.5.Fetching a URL
1.6.Fetching URLs Concurrently
1.7.A Web Server
1.8.Loose Ends
2.Program Structure
2.1.Names
2.2.Declarations
2.3.Variables
2.4.Assignments
2.5.Type Declarations
2.6.Packages and Files
2.7.Scope
3.Basic Data Types
3.1.Integers
3.2.Floating—Point Numbers
3.3.Complex Numbers
3.4.Booleans
3.5.Strings
3.6.Constants
4.Composite Types
4.1.Arrays
4.2.Slices
4.3.Maps
4.4.Structs
4.5.JSON
4.6.Text and HTML Templates
5.Functions
5.1.Function Declarations
5.2.Recursion
5.3.Multiple Return Values
5.4.Errors
5.5.Function Values
5.6.Anonymous Functions
5.7.Variadic Functions
5.8.Deferred Function Calls
5.9.Panic
5.10.Recover
6.Methods
6.1.Method Declarations
6.2.Methods with a Pointer Receiver
6.3.Composing Types by Struct Embedding
6.4.Method Values and Expressions
6.5.Example: Bit Vector Type
6.6.Encapsulation
7.Interfaces
7.1.Interfaces as Contracts
7.2.Interface Types
7.3.Interface Satisfaction
7.4.Parsing Flags with flag.Value
7.5.Interface Values
7.6.Sorting with sort.Interface
7.7.The http.Handler Interface
7.8.The error Interface
7.9.Example: Expression Evaluator
7.10.Type Assertions
7.11.Discriminating Errors with Type Assertions
7.12.Querying Behaviors with Interface Type Assertions
7.13.Type Switches
7.14.Example: Token—Based XML Decoding
7.15.A Few Words of Advice
8.Goroutines and Channels
8.1.Goroutines
8.2.Example: Concurrent Clock Server
8,3.Example: Concurrent Echo Server
8.4.Channels
8.5.Looping in Parallel
8.6.Example: Concurrent Web Crawler
8.7.Multiplexing with select
8.8.Example: Concurrent Directory Traversal
8.9.Cancellation
8.10.Example: Chat Server
9.Concurrency with Shared Variables
9.1.Race Conditions
9.2.Mutual Exclusion: sync.Mutex
9.3.Read/Write Mutexes: sync .RWMutex
9.4.Memory Synchronization
9.5.Lazy Initialization: sync.Once
9.6.The Race Detector
9.7.Example: Concurrent Non—Blocking Cache
9.8.Goroutines and Threads
10.Packages and the Go Tool
10.1.Introduction
10.2.Import Paths
10.3.The Package Declaration
10.4.Import Declarations
10.5.Blanklmports
10.6.Packages and Naming
10.7.The Go Tool
Il.Testing
11.1.The go test Tool
11.2.Test Functions
11.3.Coverage
11.4.Benchmark Functions
11.5.Pro ling
11.6.Example Functions
12.Reflection
12.1.Why Reflection?
12.2.reflect.Type and reflect.Value
12.3.Display, a Recursive Value Printer
12.4.Example: Encoding S—Expressions
12.5.Setting Variables with reflect.Value
12.6.Example: Decoding S—Expressions
12.7.Accessing Struct Field Tags
12.8.Displaying the Methods ofa Type
12.9.A Word of Caution
13.Low—Level Programming
13.1.unsafe.Sizeof, Alignof, and Offsetof
13.2, unsafe.Pointer
13.3.Example: Deep Equivalence
13.4.Calling C Code with cgo
13.5.Another Word of Caution

LEAVE A COMMENT

Captcha Code