Golang核心知识总结
go语言系统编程,是英文版,
What this book covers
Chapter 1, Getting started with Go and Unix Systems Programming, starts by defining what
systems programming is before talking about the advantages and the disadvantages of Go,
the features of Go version 1.8, two handy Go tools named gofmt and godoc, as well as the
various states of Unix processes.
Chapter 2, Writing Programs in Go, helps you learn how to compile Go code and how to use
the environment variables that Go supports, and understand how Go reads the command
line arguments of a program. Then, we will talk about getting user input and output, which
are fundamental tasks, show you how to define functions in Go, where the defer keyword
is mentioned for the first time in this book and continue by discussing the data structures
that Go offers using handy code examples. In the remaining sections of the chapter, we will
discuss Go interfaces and random number generation. I am sure that you are going to enjoy
this chapter!
Chapter 3, Advanced Go Features, goes deeper and starts talking about some advanced Go
features, including error handling, which is critical when developing systems software and
error logging. Then it introduces you to pattern matching and regular expressions, Go
Reflection, and talks about unsafe code. After that, it compares Go to other programming
languages and presents two utilities, named dtrace(1) and strace(1), that allow you to
see what happens behind the scenes when you execute a program. Lastly, it talks about how
you can use the go tool to detect unreachable code and how to avoid some common Go
mistakes.
Chapter 4, Go Packages, Algorithms, and Data Structures, talks about algorithms and sorting
in Go and about the sort.Slice() function, which requires Go version 1.8 or newer. Then
it shows Go implementations of a linked list, a binary tree and a hash table. After that, it
discusses Go packages and teaches you how to create and use your own Go packages. The
last part of the chapter discusses Garbage