Go language Programming (Seven Qiniu storage team)

Source: Internet
Author: User
Tags constant definition
This is a creation in Article, where the information may have evolved or changed. "Go language programming (Seven Qiniu storage team)"
Basic information
Author: Xu Xiwei Lu Guihua
Series Name: Turing original
Publisher: People's post and telecommunications publishing house
isbn:9787115290366
Last Date: 2012-8-15
Publication date: August 2012
Folio: 16 Open
Page: 1
Edition: 1-1
Category: Computer > Software and Programming > Synthesis > Advanced Programming language Design


More about the "Go Language programming (Seven Qiniu storage team)"
Content Introduction Books
Computer Books
"Go language Programming" first leads the reader to quickly browse the full picture of the go language, quickly dispel the reader's unfamiliar sense of the language, and then gradually introduced the go language and object-oriented programming syntax, which interspersed with other mainstream language to let the reader understand the design motivation of the go language, Then it discusses the important parallel programming method of Go language, then introduces the non-grammatical related but very important content of network programming, engineering management, security programming, development tools, and finally a series of articles about the go language, which can help readers to understand the new language in depth.
Go language programming is suitable for all levels of developers to read.
Directory
"Go Language Programming"
The 1th chapter of the first language go 1
1.1 A Brief history of Languages 1
1.2 Language Features 2
1.2.1 Automatic garbage Collection 3
1.2.2 Richer Built-in type 4
1.2.3 function multiple return value 5
1.2.4 Error Handling 6
1.2.5 Anonymous functions and closures 6
1.2.6 Type and Interface 7
1.2.7 Concurrent Programming 8
1.2.8 Reflex 9
1.2.9 language interactivity 10
1.3 First GO Program 11
1.3.1 Code Interpretation 11
1.3.2 Compiling Environment Preparation 12
1.3.3 Compiling the program 12
1.4 Development Tool Selection 13
1.5 Project Management 13
1.6 Problem Tracking and debugging 18
1.6.1 Print Log 18
1.6.2 GDB Debug 18
1.7 How to ask for help 18
1.7.1 Mailing List 19
1.7.2 Website Resources 19
1.8 Summary 19
2nd Chapter Sequential Programming 20
2.1 Variables 20
2.1.1 Variable declaration 20
2.1.2 Initialization of variables 21
2.1.3 Variable Assignment Value 21
2.1.4 Anonymous Variable 22
2.2 Constant 22
2.2.1 Literal constant 22
2.2.2 Constant Definition 23
2.2.3 Pre-defined constants 23
2.2.4 Enumeration 24
2.3 Type 24
2.3.1 Boolean Type 25
2.3.2 Integral Type 25
2.3.3 Floating-point 27
2.3.4 Complex Type 28
2.3.5 String 28
2.3.6 Character Type 30
2.3.7 Array 31
2.3.8 Array Slices 32
2.3.9 Map 36
2.4 Process Control 38
2.4.1 Conditional Statement 38
2.4.2 SELECT statement 39
2.4.3 Loop Statement 40
2.4.4 Jump Statement 41
2.5 Functions 41
2.5.1 function Definition 42
2.5.2 Function Call 42
2.5.3 Indeterminate parameter 43
2.5.4 Multiple return value 45
2.5.5 anonymous functions and closures 45
2.6 Error Handling 47
2.6.1 Error Interface 47
2.6.2 Defer 48
2.6.3 Panic () and recover () 49
2.7 Complete Example 50
2.7.1 Program Structure 51
2.7.2 Main program 51
2.7.3 Algorithm Implementation 54
2.7.4 Main program 57
2.7.5 Build and Execute 59
2.8 Summary 61
3rd. Object-Oriented Programming 62
3.1 Type System 62
3.1.1 Adding method 63 to a type
3.1.2 Value semantics and referential semantics 66
3.1.3 Structural Body 67
3.2 Initialization 68
3.3 Anonymous Combo 68
3.4 Visibility 71
3.5 Interface 71
3.5.1 interfaces for other languages 71
3.5.2 Non-intrusive interface 73
3.5.3 Interface Assignment Value 74
3.5.4 Interface Query 76
3.5.5 Type Query 78
3.5.6 Interface Combination 78
3.5.7 any type 79
3.6 Complete Example 79
3.6.1 Music Library 80
3.6.2 Music Playback 82
3.6.3 Main program 84
3.6.4 Build Run 86
3.6.5 Legacy Issues 86
3.7 Summary 87
The 4th Chapter concurrent Programming 88
4.1 Concurrency Basics 88
4.2 Co-process 90
4.3 goroutine 90
4.4 Concurrent Communication 91
4.5 Channel 94
4.5.1 Basic Syntax 95
4.5.2 Select 95
4.5.3 buffering mechanism 96
4.5.4 Timeout Mechanism 97
Transmission of 4.5.5 Channel 98
4.5.6 Unidirectional Channel 98
4.5.7 Closing Channel 99
4.6 Multi-core parallelization 100
4.7 Sell Time Slice 101
4.8 Synchronization 101
4.8.1 Sync Lock 101
4.8.2 Global Uniqueness Action 102
4.9 Complete Example 103
4.9.1 Simple IPC Framework 105
4.9.2 Central Server 108
4.9.3 Main program 113
4.9.4 Running the program 116
4.10 Summary 117
The 5th chapter of network Programming 118
5.1 Socket Programming 118
5.1.1 Dial () function 118
5.1.2 ICMP sample program 119
5.1.3 TCP Sample Program 121
5.1.4 Richer network communication 122
5.2 HTTP Programming 124
5.2.1 HTTP Client 124
5.2.2 HTTP Server 130
5.3 RPC Programming 132
RPC support and 5.3.1 in the Go language
Handling 132
5.3.2 Gob Introduction 134
5.3.3 designed an elegant RPC interface 134
5.4 JSON processing 135
5.4.1 encoding to JSON format 136
5.4.2 Decoding JSON data 137
5.4.3 decoding JSON data for unknown structures 138
5.4.4 JSON streaming read-write 140
5.5 Website Development 140
5.5.1 The simplest website program 141
5.5.2 Net/http Package Introduction 141
5.5.3 developing a simple album site 142
5.6 Summary 157
6th Chapter Safety Programming 158
6.1 Data Encryption 158
6.2 Digital Signatures 158
6.3 Digital Certificate 159
6.4 PKI System 159
6.5 The Go language hash function 159
6.6 Encrypted communication 160
6.6.1 Encrypted communication Flow 161
6.6.2 Web server with HTTPS support 162
6.6.3 file servers that support HTTPS 165
6.6.4 SSL/TLS-based ECHO program 166
6.7 Summary 169
The 7th chapter of project Management 170
7.1 Go command line tool 170
7.2 Code Style 172
7.2.1 Mandatory Code Specification 172
7.2.2 non-mandatory coding style recommendations 173
7.3 Remote Import Support 175
7.4 Engineering Organization 175
7.4.1 Gopath 176
7.4.2 Directory Structure 176
7.5 Document Management 177
7.6 Engineering Construction 180
7.7 Cross-platform development 180
7.7.1 Cross-compiling 181
7.7.2 Android Support 182
7.8 Unit Test 183
7.9 Package Distribution 184
7.10 Summary 184
The 8th Chapter development tool 186
8.1 Select Development Tools 186
8.2 Gedit 187
8.2.1 Syntax Highlighting 187
8.2.2 Compiling Environment 187
8.3 Vim 188
8.4 Eclipse 189
8.5 notepad++ 192
8.5.1 Syntax highlighting 192
8.5.2 Compiling Environment 192
8.6 Liteide 193
8.7 Summary 195
9th. Advanced Topic 196
9.1 Reflection 196
9.1.1 Basic Concepts 196
9.1.2 Basic Usage 197
9.1.3 reflection operations on structures 199
9.2 Language Interactivity 199
9.2.1 Type Mapping 200
9.2.2 String Mapping 201
9.2.3 C Program 201
9.2.4 Function Call 202
9.2.5 compiling CGO 203
9.3 Link Symbol 203
9.4 Goroutine Mechanism 204
9.4.1 co-process 204
C Language implementation of 9.4.2 205
9.4.3 Libraries Overview 205
9.4.4 Task 208
9.4.5 Task Scheduler 210
9.4.6 Context Switch 211
9.4.7 Communication Mechanism 215
9.5 Interface Mechanism 216
9.5.1 type assignment to interface 217
9.5.2 Interface Query 223
9.5.3 Interface Assignment Value 224
Appendix A 225

The book information from: China Interactive PublishingNet
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.