Warehouse Stock Clearance Sale

Grab a bargain today!


Sign Up for Fishpond's Best Deals Delivered to You Every Day
Go
Programming in Go
Creating Applications for the 21st Century (Developer's Library)

Rating
Format
Electronic Book Text, 496 pages
Published
United States, 1 May 2012

Your Hands-On Guide to Go, the Revolutionary New Language Designed for Concurrency, Multicore Hardware, and Programmer Convenience

 

Today’s most exciting new programming language, Go, is designed from the ground up to help you easily leverage all the power of today’s multicore hardware. With this guide, pioneering Go programmer Mark Summerfield shows how to write code that takes full advantage of Go’s breakthrough features and idioms.

 

Both a tutorial and a language reference, Programming in Go brings together all the knowledge you need to evaluate Go, think in Go, and write high-performance software with Go. Summerfield presents multiple idiom comparisons showing exactly how Go improves upon older languages, calling special attention to Go’s key innovations. Along the way, he explains everything from the absolute basics through Go’s lock-free channel-based concurrency and its flexible and unusual duck-typing type-safe approach to object-orientation.

 

Throughout, Summerfield’s approach is thoroughly practical. Each chapter offers multiple live code examples designed to encourage experimentation and help you quickly develop mastery. Wherever possible, complete programs and packages are presented to provide realistic use cases, as well as exercises. Coverage includes

 

  • Quickly getting and installing Go, and building and running Go programs
  • Exploring Go’s syntax, features, and extensive standard library
  • Programming Boolean values, expressions, and numeric types
  • Creating, comparing, indexing, slicing, and formatting strings
  • Understanding Go’s highly efficient built-in collection types: slices and maps
  • Using Go as a procedural programming language
  • Discovering Go’s unusual and flexible approach to object orientation
  • Mastering Go’s unique, simple, and natural approach to fine-grained concurrency
  • Reading and writing binary, text, JSON, and XML files
  • Importing and using standard library packages, custom packages, and third-party packages
  • Creating, documenting, unit testing, and benchmarking custom packages

Show more

This item is no longer available.

Product Description

Your Hands-On Guide to Go, the Revolutionary New Language Designed for Concurrency, Multicore Hardware, and Programmer Convenience

 

Today’s most exciting new programming language, Go, is designed from the ground up to help you easily leverage all the power of today’s multicore hardware. With this guide, pioneering Go programmer Mark Summerfield shows how to write code that takes full advantage of Go’s breakthrough features and idioms.

 

Both a tutorial and a language reference, Programming in Go brings together all the knowledge you need to evaluate Go, think in Go, and write high-performance software with Go. Summerfield presents multiple idiom comparisons showing exactly how Go improves upon older languages, calling special attention to Go’s key innovations. Along the way, he explains everything from the absolute basics through Go’s lock-free channel-based concurrency and its flexible and unusual duck-typing type-safe approach to object-orientation.

 

Throughout, Summerfield’s approach is thoroughly practical. Each chapter offers multiple live code examples designed to encourage experimentation and help you quickly develop mastery. Wherever possible, complete programs and packages are presented to provide realistic use cases, as well as exercises. Coverage includes

 

Show more
Product Details
EAN
9780132764094
ISBN
0132764091
Publisher
Age Range

Table of Contents

Tables xv

 

Introduction 1

Why Go? 1

The Structure of the Book 4

Acknowledgments 5

 

Chapter 1: An Overview in Five Examples 7

1.1. Getting Going 7

1.2. Editing, Compiling, and Running 9

1.3. Hello Who? 14

1.4. Big Digits–Two-Dimensional Slices 16

1.5. Stack–Custom Types with Methods 21

1.6. Americanise–Files, Maps, and Closures 29

1.7. Polar to Cartesian–Concurrency 40

1.8. Exercise 48

 

Chapter 2: Booleans and Numbers 51

2.1. Preliminaries 51

2.2. Boolean Values and Expressions 56

2.3. Numeric Types 57

2.4. Example: Statistics 72

2.5. Exercises 78

 

Chapter 3: Strings 81

3.1. Literals, Operators, and Escapes 83

3.2. Comparing Strings 86

3.3. Characters and Strings 87

3.4. Indexing and Slicing Strings 90

3.5. String Formatting with the Fmt Package 93

3.6. Other String-Related Packages 106

3.7. Example: M3u2pls 130

3.8. Exercises 135

 

Chapter 4: Collection Types 139

4.1. Values, Pointers, and Reference Types 140

4.2. Arrays and Slices 148

4.3. Maps 164

4.4. Examples 171

4.5. Exercises 180

 

Chapter 5: Procedural Programming 185

5.1. Statement Basics 186

5.2. Branching 192

5.3. Looping with For Statements 203

5.4. Communication and Concurrency Statements 205

5.5. Defer, Panic, and Recover 212

5.6. Custom Functions 219

5.7. Example: Indent Sort 244

5.8. Exercises 250

 

Chapter 6: Object-Oriented Programming 253

6.1. Key Concepts 254

6.2. Custom Types 256

6.3. Interfaces 265

6.4. Structs 275

6.5. Examples 282

6.6. Exercises 311

 

Chapter 7: Concurrent Programming 315

7.1. Key Concepts317

7.2. Examples 322

7.3. Exercises 357

 

Chapter 8: File Handling 361

8.1. Custom Data Files 362

8.2. Archive Files 397

8.3. Exercises 405

 

Chapter 9: Packages 407

9.1. Custom Packages 408

9.2. Third-Party Packages 417

9.3. A Brief Survey of Go’s Commands 418

9.4. A Brief Survey of the Go Standard Library 419

9.5. Exercises 431

 

Appendix A: Epilogue 435

Appendix B: The Dangers of Software Patents 437

Appendix C: Selected Bibliography 441

 

Index 443

 

About the Author

Mark Summerfield, owner of Qtrac Ltd., is an independent trainer, consultant, technical editor, and writer specializing in Go, Python, C++, Qt, and PyQt. His books include Rapid GUI Programming with Python and Qt (Prentice Hall, 2007), C++ GUI Programming with Qt 4 (with Jasmin Blanchette, Prentice Hall, 2008), Programming in Python 3, Second Edition (Addison-Wesley, 2009), and Advanced Qt Programming (Prentice Hall, 2010).

 

Show more
Review this Product
Ask a Question About this Product More...
 
Look for similar items by category
This title is unavailable for purchase as none of our regular suppliers have stock available. If you are the publisher, author or distributor for this item, please visit this link.

Back to top