Table of Contents
The Go Programming Language by Alan Donovan and Brian Kernighan
Go Programming Language by Alan Donovan and Brian Kernighan
The Go Programming Language by Alan Donovan and Brian Kernighan
Table of Contents
Go Programming Language by Alan Donovan and Brian Kernighan Table of Contents
- 1. Tutorial
- 1.1. Hello, World
- 1.4. Animated GIFs
- 1.5. Fetching a URL
- 1.7. A Web Server
- 1.8. Loose Ends
- 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.1. Integers
- 3.3. Complex Numbers
- 3.4. Booleans
- 3.5. Strings
- 3.6. Constants
- 5. Functions
- 5.2. Recursion
- 5.4. Errors
- 5.5. Function Values
- 5.6. Anonymous Functions
- 5.7. Variadic Functions
- 5.9. Panic
- 5.10. Recover
- 6. Methods
- 6.1. Method Declarations
- 6.6. Encapsulation
- 7. Interfaces
- 7.2. Interface Types
- 7.5. Interface Values
- 7.8. The error Interface
- 7.10. Type Assertions
- 7.13. Type Switches
- 7.15. A Few Words of Advice
- 8.1. Goroutines
- 8.4. Channels
- 8.5. Looping in Parallel
- 8.9. Cancellation
- 8.10. Example - Chat Server
- 9.1. Race Conditions
- 9.6. The Race Detector
- 10.1. Introduction
- 10.2. Import Paths
- 10.3. The Package Declaration
- 10.4. Import Declarations
- 10.5. Blank Imports
- 10.6. Packages and Naming
- 10.7. The Go Tool
- 11. Testing
- 11.1. The go test Tool
- 11.2. Test Functions
- 11.3. Coverage
- 11.4. Benchmark Functions
- 11.5. Profiling
- 11.6. Example Functions
- 12. Reflection
- 12.1. Why Reflection
- 12.9. A Word of Caution
- 13.2. unsafe.Pointer
- 13.4. Calling C Code with cgo
- 13.5. Another Word of Caution
Book details
- Series: Addison-Wesley Professional Computing Series
- Paperback: 398 pages
Best Reviews
By L. Hall
5.0 out of 5 stars
Carefully crafted to make you competent - if you are patient enough give yourself the time to learn
Reviewed in the United States on May 6, 2018
Not a book for the impatient; but if you're a novice, this is the book to trust to take you through from beginner to competence and well on your way to proficiency. I've been a professional C/UNIX developer since the mid-80's and Java and Python for the past 20 years. Don't get me wrong: Go is not a difficult language to learn; but I thought I could pick it up in a few hours. There are serious ground-shattering differences between Go and everything else. Although it borrows liberally from C, Java, and Python - it really is a different approach because the language authors aren't afraid to address the shortcomings made in those and other languages for the sake of conforming with the ideas long held to be “norms”.
Case in point: Go builds statically-bound executables. No more runtime dependency woes from mis-matched DLL / .so versions.
Another example: a radically different approach to polymorphism and encapsulation leading to an easier and cleaner object model than any other.
The more I learn about Go, the more I am convinced that it will eventually overtake C/C++ as the defacto standard for system level development - and may even challenge Java and the dynamic languages for business-critical applications.“
Fair Use Source: https://amazon.com/gp/customer-reviews/R2323PNUUHEPTV