All Projects → miekg → Gobook

miekg / Gobook

Licence: other
A complete introduction into Go, superseded by https://github.com/miekg/learninggo

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Gobook

Free Courses
A collection of free courses about programming 📖
Stars: ✭ 281 (-68.14%)
Mutual labels:  free, learning
React Book
Free book on React. Beginner to intermediate.
Stars: ✭ 855 (-3.06%)
Mutual labels:  free, book
Elm Tutorial
A guide to building web applications using Elm 0.18
Stars: ✭ 398 (-54.88%)
Mutual labels:  book, learning
calibre-docker
docker 一键部署 calibre 在线书库
Stars: ✭ 15 (-98.3%)
Mutual labels:  learning, book
Pure Bash Bible
📖 A collection of pure bash alternatives to external processes.
Stars: ✭ 28,109 (+3086.96%)
Mutual labels:  book, learning
rust-course
<<Rust语言圣经(Book & Course)>>对Rust语言进行全面且深入的讲解,书中辅以生动的示例和习题,带你攻克从入门学习到实践应用的各种难关。 我们的目标是做一门优秀的开源Rust教程(课程)——学Rust就上course.rs。
Stars: ✭ 2,739 (+210.54%)
Mutual labels:  learning, book
Bash Handbook
📖 For those who wanna learn Bash
Stars: ✭ 4,691 (+431.86%)
Mutual labels:  book, learning
Books Collection
To the programmer's open source and free books collection 给程序员的开源、免费书籍收集,图书集合。
Stars: ✭ 2,188 (+148.07%)
Mutual labels:  free, book
Dasarpemrogramangolang
📖 Source Code E-book Dasar Pemrograman Golang
Stars: ✭ 625 (-29.14%)
Mutual labels:  book, learning
Node.js design patterns second edition code
Code repository for Node.js Design Patterns Second Edition, published by Packt
Stars: ✭ 617 (-30.05%)
Mutual labels:  book, learning
Jbook
Notes about programming, advices, algorithms and a lot of good stuff with Java
Stars: ✭ 233 (-73.58%)
Mutual labels:  free, book
Ethereum Development With Go Book
📖 A little book on Ethereum Development with Go (golang)
Stars: ✭ 754 (-14.51%)
Mutual labels:  free, book
Books
Awesome Books
Stars: ✭ 3,242 (+267.57%)
Mutual labels:  free, learning
Pure Sh Bible
📖 A collection of pure POSIX sh alternatives to external processes.
Stars: ✭ 3,246 (+268.03%)
Mutual labels:  book, learning
Opensourceresources
Free opensource Learning Resources related to Web-Development A to Z 🔥❤
Stars: ✭ 210 (-76.19%)
Mutual labels:  free, learning
Learninggo
Learning Go Book in mmark
Stars: ✭ 438 (-50.34%)
Mutual labels:  free, book
Library
ufutx share book libraries : share and manage books platform for personal and organization
Stars: ✭ 144 (-83.67%)
Mutual labels:  free, book
Using Zend Framework 3 Book
A free and reader-friendly book on Zend Framework 3
Stars: ✭ 160 (-81.86%)
Mutual labels:  free, book
Wtfjs
🤪 A list of funny and tricky JavaScript examples
Stars: ✭ 24,594 (+2688.44%)
Mutual labels:  book, learning
Learn Vim
Learning Vim and Vimscript doesn't have to be hard. This is the guide that you're looking for.
Stars: ✭ 7,221 (+718.71%)
Mutual labels:  book, learning

"Learning Go" is now available online.

See https://miek.nl/go and this github repo.

Note this book's source has been rewritten in mmark and that source is available at https://github.com/miekg/learninggo.

THIS REPO IS DEPRECATED.

Learning Go - a free PDF for learning the Go language.

The book currently consists of the following chapters:

  1. Introduction: Details the lineage of the language Go and shows the types, variables and control structures.
  2. Functions: How to make and use functions.
  3. Packages: Functions and data are grouped together in packages. Here you will see how to make your own package. How to unit test your package is also described.
  4. Beyond the basics: Learn how to create your own data types and define functions on them (called methods in Go).
  5. Interfaces: Go does not support Object Orientation in the traditional sense. In Go the central concept is interfaces.
  6. Concurrency: With the go keyword functions can be started in separate routines (called goroutines). Communication with these goroutines is done via channels.
  7. Communication : How to create/read/write from and to files. And how to do networking.

Each chapter concludes with a number of exercises with answers to help you get some hands-on experience. Currently there are more than 30 exercises.

Building the book

Package Prerequisites

When building this book from LaTeX sources files you will need the following packages on Ubuntu (tested on 13.04).

  • inkscape
  • gnumeric
  • ttf-droid
  • ttf-dejavu
  • ttf-sazanami-gothic (Japanese font)
  • ttf-arphic-ukai
  • texlive-fonts-recommended
  • texlive-extra-utils
  • texlive-xetex
  • texlive-latex-extra
  • texlive-latex-recommended
  • git-core
  • GNU make

Following is a shell script to automate the package prerequisites installation.

You can copy and paste the following code to your vt100 session to kickoff the chains of many packages installation.

# tested on Ubuntu 13.04
for i in inkscape \
gnumeric \
ttf-droid \
ttf-dejavu \
ttf-sazanami-gothic \
ttf-arphic-ukai \
texlive-fonts-recommended \
texlive-extra-utils \
texlive-xetex \
texlive-latex-extra \
texlive-latex-recommended \
latex-cjk-xcjk \
git-core \
make
do
sudo apt-get install $i -y
done

Checking out the Learning Go LaTeX sources.

Using http protocol.

[email protected]:~$git clone https://github.com/miekg/gobook.git
Cloning into 'gobook'...
remote: Counting objects: 4515, done.
remote: Compressing objects: 100% (1385/1385), done.
remote: Total 4515 (delta 3106), reused 4512 (delta 3104)
Receiving objects: 100% (4515/4515), 1.53 MiB | 1.17 MiB/s, done.
Resolving deltas: 100% (3106/3106), done.
[email protected]:~$

Using git protocol if you already have github account setup.

git clone [email protected]:tjyang/gobook.git

Make the Learning Go Book

make

Download the prebuilt Learning Go book

Latest prebuilt pdf book [can be downloaded from http://www.miek.nl/downloads/Go/] 1

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].