├── 1.Introduction.md ├── 2.1.Packages.md ├── 2.10.Type-conversions.md ├── 2.11.Type-inference.md ├── 2.12.Constants.md ├── 2.13.For.md ├── 2.14.If.md ├── 2.15.Switch.md ├── 2.16.Defer.md ├── 2.17.Pointers.md ├── 2.18.Structs.md ├── 2.19.Arrays.md ├── 2.2.Imports.md ├── 2.20.Slices.md ├── 2.21.Range.md ├── 2.22.Maps.md ├── 2.23.Function-values.md ├── 2.24.Function-closures.md ├── 2.3.Exported-names.md ├── 2.4.Functions.md ├── 2.5.Multiple-results.md ├── 2.6.Named-return-values.md ├── 2.7.Variables.md ├── 2.8.Basic-types.md ├── 2.9.Zero-values.md ├── 3.1.Methods.md ├── 3.2.Interfaces.md ├── 3.3.Stringers.md ├── 3.4.Errors.md ├── 3.5.Readers.md ├── 3.6.Web-servers.md ├── 3.7.Images.md ├── 4.1.Goroutines.md ├── 4.2.Channels.md ├── 4.3.Range-and-close.md ├── 4.4.Select.md └── README.md /1.Introduction.md: -------------------------------------------------------------------------------- 1 | # Giới thiệu về ngôn ngữ lập trình Go 2 | 3 | # Lịch sử ra đời 4 | 5 | # Triết lý thiết kế 6 | -------------------------------------------------------------------------------- /2.1.Packages.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/1 2 | -------------------------------------------------------------------------------- /2.10.Type-conversions.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/13 2 | -------------------------------------------------------------------------------- /2.11.Type-inference.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/14 2 | -------------------------------------------------------------------------------- /2.12.Constants.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/15 2 | http://tour.golang.org/basics/16 3 | -------------------------------------------------------------------------------- /2.13.For.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/flowcontrol/1 2 | http://tour.golang.org/flowcontrol/2 3 | http://tour.golang.org/flowcontrol/3 4 | http://tour.golang.org/flowcontrol/4 5 | -------------------------------------------------------------------------------- /2.14.If.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/flowcontrol/5 2 | http://tour.golang.org/flowcontrol/6 3 | http://tour.golang.org/flowcontrol/7 4 | -------------------------------------------------------------------------------- /2.15.Switch.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/flowcontrol/9 2 | http://tour.golang.org/flowcontrol/10 3 | http://tour.golang.org/flowcontrol/11 4 | -------------------------------------------------------------------------------- /2.16.Defer.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/flowcontrol/12 2 | http://tour.golang.org/flowcontrol/13 3 | -------------------------------------------------------------------------------- /2.17.Pointers.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/1 2 | -------------------------------------------------------------------------------- /2.18.Structs.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/2 2 | http://tour.golang.org/moretypes/3 3 | http://tour.golang.org/moretypes/4 4 | http://tour.golang.org/moretypes/5 5 | -------------------------------------------------------------------------------- /2.19.Arrays.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/6 2 | -------------------------------------------------------------------------------- /2.2.Imports.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/2 2 | -------------------------------------------------------------------------------- /2.20.Slices.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/7 2 | http://tour.golang.org/moretypes/8 3 | http://tour.golang.org/moretypes/9 4 | http://tour.golang.org/moretypes/10 5 | http://tour.golang.org/moretypes/11 6 | -------------------------------------------------------------------------------- /2.21.Range.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/12 2 | http://tour.golang.org/moretypes/13 3 | -------------------------------------------------------------------------------- /2.22.Maps.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/15 2 | http://tour.golang.org/moretypes/16 3 | http://tour.golang.org/moretypes/17 4 | http://tour.golang.org/moretypes/18 5 | -------------------------------------------------------------------------------- /2.23.Function-values.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/20 2 | -------------------------------------------------------------------------------- /2.24.Function-closures.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/moretypes/21 2 | -------------------------------------------------------------------------------- /2.3.Exported-names.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/3 2 | -------------------------------------------------------------------------------- /2.4.Functions.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/4 2 | http://tour.golang.org/basics/5 3 | -------------------------------------------------------------------------------- /2.5.Multiple-results.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/6 2 | -------------------------------------------------------------------------------- /2.6.Named-return-values.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/7 2 | -------------------------------------------------------------------------------- /2.7.Variables.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/8 2 | http://tour.golang.org/basics/9 3 | http://tour.golang.org/basics/10 4 | -------------------------------------------------------------------------------- /2.8.Basic-types.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/11 2 | -------------------------------------------------------------------------------- /2.9.Zero-values.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/basics/12 2 | -------------------------------------------------------------------------------- /3.1.Methods.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/1 2 | http://tour.golang.org/methods/2 3 | http://tour.golang.org/methods/3 4 | -------------------------------------------------------------------------------- /3.2.Interfaces.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/4 2 | http://tour.golang.org/methods/5 3 | -------------------------------------------------------------------------------- /3.3.Stringers.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/6 2 | -------------------------------------------------------------------------------- /3.4.Errors.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/8 2 | -------------------------------------------------------------------------------- /3.5.Readers.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/10 2 | -------------------------------------------------------------------------------- /3.6.Web-servers.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/13 2 | -------------------------------------------------------------------------------- /3.7.Images.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/methods/15 2 | -------------------------------------------------------------------------------- /4.1.Goroutines.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/concurrency/1 2 | -------------------------------------------------------------------------------- /4.2.Channels.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/concurrency/2 2 | http://tour.golang.org/concurrency/3 3 | -------------------------------------------------------------------------------- /4.3.Range-and-close.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/concurrency/4 2 | -------------------------------------------------------------------------------- /4.4.Select.md: -------------------------------------------------------------------------------- 1 | http://tour.golang.org/concurrency/5 2 | http://tour.golang.org/concurrency/6 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Go book 2 | 3 | Đây là dự án viết cuốn sách nhập môn ngôn ngữ lập trình Go của cộng đồng Golang Việt Nam, nhắm đến độc giả là những người mới bắt đầu học ngôn ngữ lập trình Go. Nội dung cuốn sách dựa chủ yếu trên trang tour.golang.org. Dự kiến ít hơn 100 trang. Mục tiêu hoàn thành trong 1 tháng để ra mắt trong meetup tiếp theo (8/9). 4 | 5 | ## Cách thức đóng góp 6 | Cuốn sách này được viết theo tinh thần của cộng đồng mã nguồn mở, tức là ai cũng có thể tham gia vào đóng góp, bằng cách viết, hoặc đề xuất, góp ý. 7 | 8 | + Tham gia viết: Để tham gia viết sách cùng, bạn fork dự án này, viết trên repo của bạn, rồi sau đó gửi pull request cho chúng tôi. Nội dung sách được viết theo cú pháp của Markdown. 9 | + Đề xuất, góp ý: Chúng tôi luôn đón nhận mọi đề xuất hay góp ý về nội dung của các bạn. Để góp ý về nội dung cuốn sách, bạn hay gửi issue tại repo này. 10 | 11 | Không có đóng góp nào là nhỏ, chúng tôi tôn trọng mọi đóng góp của các bạn. 12 | --------------------------------------------------------------------------------