Go example code

Clone this repo:

Branches

  1. 09c3a5e README.md: update package paths to be golang.org/x/example/... by Hana · 7 days ago master
  2. bcf50bf go.mod/go.sum: add a go.mod and go.sum file for golang.org/x/example by Suzy Mueller · 3 months ago
  3. 46695d8 gotypes: Go 1.9 was released by Alexey Palazhchenko · 3 years, 7 months ago
  4. 0dea2d0 gotypes: document proposed Go 1.9 aliases by Alan Donovan · 4 years, 2 months ago
  5. 324742a doc: add gotypes to readme by Harry Moreno · 4 years, 10 months ago

Go example projects

Go Reference

This repository contains a collection of Go programs and libraries that demonstrate the language, standard libraries, and tools.

hello and stringutil

go get golang.org/x/example/hello

A trivial “Hello, world” program that uses a stringutil package.

Command hello covers:

  • The basic form of an executable command
  • Importing packages (from the standard library and the local repository)
  • Printing strings (fmt)

Library stringutil covers:

  • The basic form of a library
  • Conversion between string and []rune
  • Table-driven unit tests (testing)

outyet

go get golang.org/x/example/outyet

A web server that answers the question: “Is Go 1.x out yet?”

Topics covered:

  • Command-line flags (flag)
  • Web servers (net/http)
  • HTML Templates (html/template)
  • Logging (log)
  • Long-running background processes
  • Synchronizing data access between goroutines (sync)
  • Exporting server state for monitoring (expvar)
  • Unit and integration tests (testing)
  • Dependency injection
  • Time (time)

appengine-hello

goapp get golang.org/x/example/appengine-hello

A trivial “Hello, world” App Engine application intended to be used as the starting point for your own code.

Note: The goapp tool is part of the Google App Engine SDK for Go.

gotypes

The go/types package is a type-checker for Go programs. It is one of the most complex packages in Go's standard library, so we have provided this tutorial to help you find your bearings. It comes with several example programs that you can obtain using go get and play with as you learn to build tools that analyze or manipulate Go programs.

template

A trivial web server that demonstrates the use of the template package's block feature.