Programming in Go : Creating Applications for the 21st Century (Developer's Library)

Programming in Go : Creating Applications for the 21st Century (Developer's Library)

  • ただいまウェブストアではご注文を受け付けておりません。 ⇒古書を探す
  • 製本 Paperback:紙装版/ペーパーバック版/ページ数 475 p.
  • 言語 ENG
  • 商品コード 9780321774637
  • DDC分類 005.133

Full Description


Your Hands-On Guide to Go, the Revolutionary New Language Designed for Concurrency, Multicore Hardware, and Programmer ConvenienceToday'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 includesQuickly 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

Contents

Tables xvIntroduction 1Why Go? 1The Structure of the Book 4Acknowledgments 5Chapter 1: An Overview in Five Examples 71.1. Getting Going 71.2. Editing, Compiling, and Running 91.3. Hello Who? 141.4. Big Digits-Two-Dimensional Slices 161.5. Stack-Custom Types with Methods 211.6. Americanise-Files, Maps, and Closures 291.7. Polar to Cartesian-Concurrency 401.8. Exercise 48Chapter 2: Booleans and Numbers 512.1. Preliminaries 512.2. Boolean Values and Expressions 562.3. Numeric Types 572.4. Example: Statistics 722.5. Exercises 78Chapter 3: Strings 813.1. Literals, Operators, and Escapes 833.2. Comparing Strings 863.3. Characters and Strings 873.4. Indexing and Slicing Strings 903.5. String Formatting with the Fmt Package 933.6. Other String-Related Packages 1063.7. Example: M3u2pls 1303.8. Exercises 135Chapter 4: Collection Types 1394.1. Values, Pointers, and Reference Types 1404.2. Arrays and Slices 1484.3. Maps 1644.4. Examples 1714.5. Exercises 180Chapter 5: Procedural Programming 1855.1. Statement Basics 1865.2. Branching 1925.3. Looping with For Statements 2035.4. Communication and Concurrency Statements 2055.5. Defer, Panic, and Recover 2125.6. Custom Functions 2195.7. Example: Indent Sort 2445.8. Exercises 250Chapter 6: Object-Oriented Programming 2536.1. Key Concepts 2546.2. Custom Types 2566.3. Interfaces 2656.4. Structs 2756.5. Examples 2826.6. Exercises 311Chapter 7: Concurrent Programming 3157.1. Key Concepts3177.2. Examples 3227.3. Exercises 357Chapter 8: File Handling 3618.1. Custom Data Files 3628.2. Archive Files 3978.3. Exercises 405Chapter 9: Packages 4079.1. Custom Packages 4089.2. Third-Party Packages 4179.3. A Brief Survey of Go's Commands 4189.4. A Brief Survey of the Go Standard Library 4199.5. Exercises 431Appendix A: Epilogue 435Appendix B: The Dangers of Software Patents 437Appendix C: Selected Bibliography 441Index 443

最近チェックした商品