• $19.99

Publisher Description

Go 101 is a book focusing on Go syntax/semantics and all kinds of details. The book also tries to help gophers gain a deep and thorough understanding of Go. The book is expected to be helpful for both beginner and experienced Go programmers.


* About Go 101 - why this book is written.

* Acknowledgements

* An Introduction of Go - why Go is worth learning.

* The Official Go SDK - how to compile and run Go programs.

* Become Familiar With Go Code

* Introduction of Source Code Elements

  * Keywords and Identifiers

  * Basic Types and Their Value Literals

  * Constants and Variables - also introduces untyped values and type deductions.

  * Common Operators - more type deduction rules are introduced.

  * Function Declarations and Calls

  * Code Packages and Package Imports

  * Expressions, Statements and Simple Statements

  * Basic Control Flows

  * Goroutines, Deferred Function Calls and Panic/Recover

* Go Type System

  * Overview of Go Type System - a must read to master Go programming.

  * Pointers

  * Structs

  * Value Parts - to gain a deeper understanding into Go values.

  * Arrays, Slices and Maps - first-class citizen container types.

  * Strings

  * Functions - variadic functions, function types and values.

  * Channels - the Go way to do concurrency synchronizations.

  * Methods

  * Interfaces - value boxes used to do reflection and polymorphism.

  * Type Embedding - type extension in the Go way.

  * Type-Unsafe Pointers

  * Built-in Generics

  * Reflections - the reflect standard package.

* Some Special Topics

  * Line Break Rules

  * More About Deferred Function Calls

  * Some Panic/Recover Use Cases

  * Explain Panic/Recover Mechanism in Details

  * Code Blocks and Identifier Scopes

  * Expression Evaluation Orders

  * Value Copy Costs in Go

  * Bounds Check Elimination

* Concurrent Programming

  * Concurrency Synchronization Overview

  * Channel Use Cases

  * How to Gracefully Close Channels

  * Other Concurrency Synchronization Techniques - the sync standard package.

  * Atomic Operations - the sync/atomic standard package.

  * Memory Order Guarantees in Go

  * Common Concurrent Programming Mistakes

* Memory

  * Memory Blocks

  * Memory Layouts

  * Memory Leaking Scenarios

* Some Summaries

  * Some Simple Summaries

  * nil in Go

  * Value Conversion, Assignment and Comparison Rules

  * Syntax/Semantics Exceptions

* More Go Related Topics

Computers & Internet
April 11
Liu Xu
Liu Xu