0%

Book Description

Summary

Get Programming with Go introduces you to the powerful Go language without confusing jargon or high-level theory. By working through 32 quick-fire lessons, you’ll quickly pick up the basics of the innovative Go programming language!

About the Technology

Go is a small programming language designed by Google to tackle big problems. Large projects mean large teams with people of varying levels of experience. Go offers a small, yet capable, language that can be understood and used by anyone, no matter their experience.

About the Book

Hobbyists, newcomers, and professionals alike can benefit from a fast, modern language; all you need is the right resource! Get Programming with Go provides a hands-on introduction to Go language fundamentals, serving as a solid foundation for your future programming projects. You’ll master Go syntax, work with types and functions, and explore bigger ideas like state and concurrency, with plenty of exercises to lock in what you learn.

What’s Inside

  • Language concepts like slices, interfaces, pointers, and concurrency
  • Seven capstone projects featuring spacefaring gophers, Mars rovers, ciphers, and simulations
  • All examples run in the Go Playground — no installation required!

About the Reader

This book is for anyone familiar with computer programming, as well as anyone with the desire to learn.

About the Authors

Nathan Youngman organizes the Edmonton Go meetup and is a mentor with Canada Learning Code. Roger Peppé contributes to Go and runs the Newcastle upon Tyne Go meetup.

Table of Contents

  1. Copyright
  2. Brief Table of Contents
  3. Table of Contents
  4. Preface
  5. Acknowledgments
  6. About this book
  7. About the authors
  8. Unit 0. Getting started
    1. Lesson 1. Get ready, get set, Go
  9. Unit 1. Imperative programming
    1. Lesson 2. A glorified calculator
    2. Lesson 3. Loops and branches
    3. Lesson 4. Variable scope
    4. Lesson 5. Capstone: Ticket to Mars
  10. Unit 2. Types
    1. Lesson 6. Real numbers
    2. Lesson 7. Whole numbers
    3. Lesson 8. Big numbers
    4. Lesson 9. Multilingual text
    5. Lesson 10. Converting between types
    6. Lesson 11. Capstone: The Vigenère cipher
  11. Unit 3. Building blocks
    1. Lesson 12. Functions
    2. Lesson 13. Methods
    3. Lesson 14. First-class functions
    4. Lesson 15. Capstone: Temperature tables
  12. Unit 4. Collections
    1. Lesson 16. Arrayed in splendor
    2. Lesson 17. Slices: windows into arrays
    3. Lesson 18. A bigger slice
    4. Lesson 19. The ever-versatile map
    5. Lesson 20. Capstone: A slice of life
  13. Unit 5. State and behavior
    1. Lesson 21. A little structure
    2. Lesson 22. Go’s got no class
    3. Lesson 23. Composition and forwarding
    4. Lesson 24. Interfaces
    5. Lesson 25. Capstone: Martian animal sanctuary
  14. Unit 6. Down the gopher hole
    1. Lesson 26. A few pointers
    2. Lesson 27. Much ado about nil
    3. Lesson 28. To err is human
    4. Lesson 29. Capstone: Sudoku rules
  15. Unit 7. Concurrent programming
    1. Lesson 30. Goroutines and concurrency
    2. Lesson 31. Concurrent state
    3. Lesson 32. Capstone: Life on Mars
  16. Conclusion. Where to Go from here
  17. Appendix. Solutions
  18. Index
  19. List of Figures
  20. List of Tables
  21. List of Listings