1
0
mirror of https://github.com/golang/go synced 2024-11-22 03:34:40 -07:00
go/doc/docs.html
Andrew Gerrand 6ab8d24d72 golang.org redesign
R=r, rsc, gri
CC=golang-dev, iant, ken2, lvd, nigeltao_golang, stephenm
https://golang.org/cl/2182042
2010-09-16 14:01:02 +10:00

172 lines
6.1 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- title Documentation -->
<div class="left-column">
<h2 id="learning">Learning Go</h2>
<p>
If you're new to Go, we recommend you work through the
<a href="go_tutorial.html">tutorial</a>. The
<a href="go_spec.html">language specfication</a> has all the details should
you want to explore.
</p>
<p>
Once you've learned a little about the language,
<a href="effective_go.html">Effective Go</a> will help you learn the style and
idioms of programming in Go.
</p>
<h3 id="orig_tutorial"><a href="go_tutorial.html">A Tutorial for the Go Programming Language</a></h3>
<p>
The first tutorial. An introductory text that touches upon several core
concepts: syntax, types, allocation, constants, I/O, sorting, printing,
goroutines, and channels.
</p>
<h3 id="effective_go"><a href="effective_go.html">Effective Go</a></h3>
<p>
A document that gives tips for writing clear, idiomatic Go code.
A must read for any new Go programmer. It augments the tutorial and
the language spec, both of which should be read first.
</p>
<h3 id="code"><a href="code.html">How to write Go code</a></h3>
<p>
How to write a new package and how to test code.
</p>
<h3 id="codelab_wiki"><a href="codelab/wiki/">Codelab: Writing Web Applications</a></h3>
<p>
This codelab takes the reader through the creation of a simple wiki web
application. It touches on structs, methods, file I/O, http, regular expressions,
and closures.
</p>
<h3 id="go_for_cpp_programmers"><a href="go_for_cpp_programmers.html">Go for C++ Programmers</a></h3>
<p>
An introduction to Go for C++ programmers.
</p>
<h2 id="faqs">Frequently Asked Questions</h2>
<h3 id="go_faq"><a href="go_faq.html">Go FAQ</a></h3>
<p>
Answers to common questions about Go.
</p>
<h3 id="go_programming_faq"><a href="go_programming_faq.html">Programming FAQ</a></h3>
<p>
Answers to common questions about programming with Go.
</p>
<h3 id="go_lang_faq"><a href="go_lang_faq.html">Language Design FAQ</a></h3>
<p>
Answers to common questions about the design decisions behind Go.
</p>
<h2 id="tutorials_nonenglish">Non-English Documentation</h2>
<h3 id="tutorial_de"><a href="http://bitloeffel.de/DOC/golang/go_tutorial_de.html">Eine Anleitung zum Programmieren in Go</a></h3>
<p>
A German translation of the Go Tutorial.
</p>
<h3 id="effective_de"><a href="http://bitloeffel.de/DOC/golang/effective_go_de.html">Wirkungsvoll Go programmieren</a></h3>
<p>
A German translation of the Effective Go document.
</p>
<h3 id="code_de"><a href="http://bitloeffel.de/DOC/golang/code_de.html">Wie man Go-Kode schreibt</a></h3>
<p>
A German translation of the How to Write Go Code document.
</p>
<h3 id="effective_cn"><a href="http://code.google.com/p/ac-me/downloads/detail?name=fango.pdf">Effective Go and Tutorial, a Chinese Translation</a></h3>
<p>
A Chinese translation of both the Effective Go and Go Tutorial documents.
</p>
</div>
<div class="right-column">
<h2 id="References">References</h2>
<p>Keep these under your pillow.</p>
<h3 id="pkg"><a href="/pkg/">Package Documentation</a></h3>
<p>
The built-in documentation for the Go standard library.
</p>
<h3 id="cmd"><a href="/cmd/">Command Documentation</a></h3>
<p>
The built-in documentation for the Go tools.
</p>
<h3 id="spec"><a href="go_spec.html">Language Specification</a></h3>
<p>
The official Go Language specification.
</p>
<h3 id="go_mem"><a href="go_mem.html">The Go Memory Model</a></h3>
<p>
A document that specifies the conditions under which reads of a variable in
one goroutine can be guaranteed to observe values produced by writes to the
same variable in a different goroutine.
</p>
<h2 id="videos_talks">Videos and Talks</h2>
<h3 id="go_programming"><a href="http://www.youtube.com/watch?v=jgVhBThJdXc">Go Programming</a></h3>
<p>
A presentation delivered by Rob Pike and Russ Cox at Google I/O 2010. It
illustrates how programming in Go differs from other languages through a set of
examples demonstrating features particular to Go. These include concurrency,
embedded types, methods on any type, and program construction using interfaces.
</p>
<h3 id="techtalk"><a href="http://www.youtube.com/watch?v=rKnDgT73v8s">The Go Tech Talk</a></h3>
<p>
An hour-long talk delivered by Rob Pike at Google in October 2009.
The language's first public introduction. (See the <a href="talks/go_talk-20091030.pdf">slides in PDF format</a>.) The language has changed since it was made,
but it's still a good introduction.
</p>
<h3 id="gocoding_channel"><a href="http://www.youtube.com/gocoding">gocoding YouTube Channel</a></h3>
<p>
A YouTube channel that includes screencasts and other Go-related videos:
</p>
<ul>
<li><a href="http://www.youtube.com/gocoding#p/u/0/jDWBJOXs_iI">Screencast: Writing Go Packages</a> - writing, building, and distributing Go packages.</li>
<li><a href="http://www.youtube.com/watch?v=3brH0zOqm0w">Screencast: Testing Go Packages</a> - writing unit tests and benchmarking Go packages.</li>
</ul>
<h3 id="oscon_go"><a href="http://www.oscon.com/oscon2010/public/schedule/detail/14760">Another Go at Language Design</a></h3>
<p>
A tour, with some background, of the major features of Go, intended for
an audience new to the language. The talk was presented at OSCON 2010.
See the <a href="http://assets.en.oreilly.com/1/event/45/Another%20Go%20at%20Language%20Design%20Presentation.pdf">presentation slides</a>.
</p>
<h3 id="oscon_go"><a href="http://www.oscon.com/oscon2010/public/schedule/detail/15464">Go Emerging Languages Conference Talk</a></h3>
<p>
Rob Pike's Emerging Languages Conference presentation delivered in July 2010. See the <a href="http://assets.en.oreilly.com/1/event/45/Go%20Presentation.pdf">presentation slides</a>. Abstract:
</p>
<p><i>
Gos approach to concurrency differs from that of many languages, even those
(such as Erlang) that make concurrency central, yet it has deep roots. The path
from Hoares 1978 paper to Go provides insight into how and why Go works as it
does.
</i></p>
<h3 id="promo_video"><a href="http://www.youtube.com/watch?v=wwoWei-GAPo">The Go Promo Video</a></h3>
<p>
A short promotional video featuring Russ Cox demonstrating Go's fast compiler.
</p>
</div>
<div class="end-columns"></div>