Edit product

$7+

A Comprehensive Guide to Go Programming

Are you about to start a new exciting career with Go programming language? You found the right book to help you to learn Go!

Why Go Programming Language?

There are many programming languages in use today with different feature sets. You should pick the right programming language for the problem at hand. Some languages are more suitable for specific problems.

If you are looking for a simple and powerful general-purpose programming language, Go would be a great choice.

Salient Features & Facts

  • Compiled
  • Statically typed
  • Garbage collected
  • Built-in concurrency
  • Very fast compilation
  • No classes
  • 25 keywords


Go, also commonly referred to as Golang, is a general-purpose programming language. Go was initially developed at Google in 2007 by Robert Griesemer, Rob Pike, and Ken Thompson. Go was publicly released as a free/open source software in November 2009 by Google. Go is used by many organizations in different problem domains.

Why this Book?

This book is a comprehensive guide to the Go programming language. If you are new to programming, this book is going to be useful for you.

  • Book Features
  • Easy to follow examples.
  • Exercise at the end of chapters.
  • Additional exercises with the solution at the end of the book.
  • Cover all the major feature of Go.
  • Side notes about related topics


Table of Contents

1. Introduction

Preparations -- Organizing Code -- Organization of Chapters -- Suggestions to Use This Book

2. Quickstart

Hello World! -- Building and Running Programs -- The Example Explained -- Basics -- Exercises

3. Control Structures

If -- For -- Switch Cases -- Defer Statements -- Deferred Panic Recover -- Goto -- Exercises

4. Data Structures

Primitive Data Types -- Constants -- Arrays -- Slices -- Maps -- Custom Data Types -- Pointers -- Exercises

5. Functions & Structs

Parameters -- Return Values -- Variadic Functions -- Anonymous Functions -- Function as Value -- Methods -- Exercises

6. Interfaces

Type with Multiple Interfaces -- Empty Interface -- Pointer Receiver -- Type Assertions -- Type Switches -- Exercises

7. Concurrency

Goroutine -- Channels -- Waitgroups -- Select -- Buffered Channels-- Channel Direction -- Lazy Initialization Using sync -- Exercises

8. Packages

Creating a Package -- Package Initialization -- Documenting Packages -- Publishing Packages -- Module -- Moving Type Across Packages -- Exercises

9. Input/Output

Command Line Arguments -- Interactive Input-- Using flag Package -- String Formatting -- Exercises

10. Testing

Failing a Test -- Logging Message -- Failing with Log Message -- Skipping Test -- Parallel Running -- Exercises

11. Tooling

Getting Help -- Basic Information -- Building and Running-- Running Test -- Formatting Code-- Displaying Documentation -- Find Suspicious Code Using Vet -- Exercises

Appendix A: Answers

Appendix B: Vim Configuration

Further Readings


About the Author

Baiju Muthukadan is a software engineer based in Bangalore, India. He started his software development career in 2002. His first job was at FSF India. Baiju has contributed to many free/open source software over the last so many years. He wrote his first book related to Python in 2007. Since 2013 he is working on various Go projects. Baiju has been conducting Go related workshops since 2016. Twitter: @baijum

You've purchased this product

See it in your library

View in Library
Sorry, this item is not available in your location.
Sold out, please go back and pick another option.

Name a fair price:

  • You will get the eBook in PDF, EPUB, and MOBI formats.

Checkout

A Comprehensive Guide to Go Programming

Enter your info to complete your purchase

Card

···· ···· ···· 4242
Test card

05/18

Card

Use a different card?

Card

pp paypal

or pay with

We do not keep any of your sensitive credit card information on file with us unless you ask us to after this purchase is complete.

or pay with

Please confirm your location:
You'll be charged US$7.

Your purchase was successful!

We charged your card and sent you a receipt

    Gumroad Library

    Download from the App Store or text yourself a link to the app

    Thanks for the purchase! If you can't see the email from Gumroad, please check your Spam folder. If you want a refund for some reason, please contact me at: baiju@muthukadan.net

    Good news! Since you already have a Gumroad account, it's also been added to your library.

    Powered by Gumroad