چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Get Programming with Go

Nathan Youngman; Roger Peppé [Peppe]

قیمت نهایی

۴۹٬۰۰۰ تومان

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

سال انتشار
۲۰۱۸
فرمت
PDF
زبان
انگلیسی
حجم فایل
۱۰٫۷ مگابایت
شابک
9781617293092، 9781638355472، 1617293091، 1638355479

دربارهٔ کتاب

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 Author 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. Get Programming with Go......Page 0 Contents......Page 6 Preface......Page 8 Acknowledgments......Page 9 How this book is organized: A roadmap......Page 11 Book forum......Page 13 About the authors......Page 14 Unit 0 Getting started......Page 16 Lesson 1 Get ready, get set, Go......Page 18 1.1 What is Go?......Page 20 1.2 The Go Playground......Page 21 1.3 Packages and functions......Page 22 1.4 The one true brace style......Page 24 Summary......Page 25 Unit 1 Imperative programming......Page 26 Lesson 2 A glorified calculator......Page 28 2.1 Performing calculations......Page 29 2.2 Formatted print......Page 30 2.3 Constants and variables......Page 32 2.4.1 Declare multiple variables at once......Page 33 2.4.2 Increment and assignment operators......Page 34 2.5 Think of a number......Page 35 Summary......Page 36 Lesson 3 Loops and branches......Page 38 3.1 True or false......Page 39 3.2 Comparisons......Page 40 3.3 Branching with if......Page 41 3.4 Logical operators......Page 42 3.5 Branching with switch......Page 45 3.6 Repetition with loops......Page 46 Summary......Page 48 Lesson 4 Variable scope......Page 49 4.1 Looking into scope......Page 50 4.2 Short declaration......Page 51 4.3 Narrow scope, wide scope......Page 53 Summary......Page 55 Lesson 5 Capstone: Ticket to Mars......Page 56 Unit 2 Types......Page 58 Lesson 6 Real numbers......Page 60 6.1 Declaring floating-point variables......Page 61 6.1.2 The zero value......Page 62 6.2 Displaying floating-point types......Page 63 6.3 Floating-point accuracy......Page 64 Summary......Page 66 Lesson 7 Whole numbers......Page 68 7.1.1 Integer types for every occasion......Page 69 7.1.2 Knowing your type......Page 70 7.2 The uint8 type for 8-bit colors......Page 71 7.3.1 Looking at the bits......Page 73 7.3.2 Avoid wrapping around time......Page 75 Summary......Page 76 Lesson 8 Big numbers......Page 77 8.1 Hitting the ceiling......Page 78 8.2 The big package......Page 79 8.3 Constants of unusual size......Page 81 Summary......Page 82 Lesson 9 Multilingual text......Page 83 9.1.1 Raw string literals......Page 84 9.2 Characters, code points, runes, and bytes......Page 85 9.3 Pulling the strings......Page 87 9.4 Manipulating characters with Caesar cipher......Page 88 9.4.1 A modern variant......Page 89 9.5 Decoding strings into runes......Page 90 Summary......Page 92 Lesson 10 Converting between types......Page 94 10.1 Types don?t mix......Page 95 10.2 Numeric type conversions......Page 96 10.3 Convert types with caution......Page 97 10.4 String conversions......Page 99 10.5 Converting Boolean values......Page 101 Summary......Page 102 Lesson 11 Capstone: The Vigen?re cipher......Page 103 Unit 3 Building blocks......Page 106 Lesson 12 Functions......Page 108 12.1 Function declarations......Page 109 12.2 Writing a function......Page 113 Summary......Page 114 Lesson 13 Methods......Page 116 13.1 Declaring new types......Page 117 13.2 Bring your own types......Page 119 13.3 Adding behavior to types with methods......Page 120 Summary......Page 122 Lesson 14 First-class functions......Page 123 14.1 Assigning functions to variables......Page 124 14.2 Passing functions to other functions......Page 125 14.4 Closures and anonymous functions......Page 127 Summary......Page 131 Lesson 15 Capstone: Temperature tables......Page 132 Unit 4 Collections......Page 134 Lesson 16 Arrayed in splendor......Page 136 16.1 Declaring arrays and accessing their elements......Page 137 16.2 Don?t go out of bounds......Page 138 16.3 Initialize arrays with composite literals......Page 139 16.4 Iterating through arrays......Page 140 16.5 Arrays are copied......Page 141 16.6 Arrays of arrays......Page 143 Summary......Page 144 Lesson 17 Slices: windows into arrays......Page 145 17.1 Slicing an array......Page 146 17.1.1 Default indices for slicing......Page 147 17.2 Composite literals for slices......Page 148 17.3 The power of slices......Page 149 17.4 Slices with methods......Page 151 Summary......Page 152 Lesson 18 A bigger slice......Page 153 18.1 The append function......Page 154 18.2 Length and capacity......Page 155 18.3 Investigating the append function......Page 156 18.4 Three-index slicing......Page 157 18.5 Preallocate slices with make......Page 158 18.6 Declaring variadic functions......Page 159 Summary......Page 160 Lesson 19 The ever-versatile map......Page 161 19.1 Declaring a map......Page 162 19.2 Maps aren?t copied......Page 164 19.4 Using maps to count things......Page 165 19.5 Grouping data with maps and slices......Page 166 19.6 Repurposing maps as sets......Page 167 Summary......Page 168 Lesson 20 Capstone: A slice of life......Page 170 20.1.2 Seeding live cells......Page 171 20.2.2 Counting neighbors......Page 172 20.3 Parallel universe......Page 173 Unit 5 State and behavior......Page 174 Lesson 21 A little structure......Page 176 21.1 Declaring a structure......Page 177 21.2 Reusing structures with types......Page 178 21.3 Initialize structures with composite literals......Page 179 21.4 Structures are copied......Page 180 21.5 A slice of structures......Page 181 21.6 Encoding structures to JSON......Page 182 21.7 Customizing JSON with struct tags......Page 183 Summary......Page 184 Lesson 22 Go?s got no class......Page 185 22.1 Attaching methods to structures......Page 186 22.2 Constructor functions......Page 187 22.3 The class alternative......Page 189 Summary......Page 191 Lesson 23 Composition and forwarding......Page 192 23.1 Composing structures......Page 193 23.2 Forwarding methods......Page 196 23.3 Name collisions......Page 198 Summary......Page 200 Lesson 24 Interfaces......Page 201 24.1 The interface type......Page 202 24.2 Discovering the interface......Page 205 24.3 Satisfying interfaces......Page 208 24.4 Summary......Page 210 Lesson 25 Capstone: Martian animal sanctuary......Page 211 Unit 6 Down the gopher hole......Page 214 Lesson 26 A few pointers......Page 216 26.1 The ampersand and the asterisk......Page 217 26.1.1 Pointer types......Page 219 26.2 Pointers are for pointing......Page 220 26.2.1 Pointing to structures......Page 223 26.2.2 Pointing to arrays......Page 224 26.3.1 Pointers as parameters......Page 225 26.3.2 Pointer receivers......Page 226 26.3.3 Interior pointers......Page 228 26.3.4 Mutating arrays......Page 229 26.4.2 Slices point at arrays......Page 230 26.5 Pointers and interfaces......Page 231 Summary......Page 233 Lesson 27 Much ado about nil......Page 235 27.1 Nil leads to panic......Page 236 27.2 Guarding your methods......Page 238 27.3 Nil function values......Page 239 27.4 Nil slices......Page 240 27.5 Nil maps......Page 241 27.6 Nil interfaces......Page 242 27.7 An alternative to nil......Page 243 Summary......Page 244 Lesson 28 To err is human......Page 245 28.1 Handling errors......Page 246 28.2.1 Writing a file......Page 248 28.2.2 The defer keyword......Page 250 28.2.3 Creative error handling......Page 251 28.3 New errors......Page 253 28.3.1 Which error is which......Page 255 28.3.2 Custom error types......Page 256 28.4 Don?t panic......Page 259 28.4.2 How to panic......Page 260 28.4.3 Keep calm and carry on......Page 261 Summary......Page 262 Lesson 29 Capstone: Sudoku rules......Page 263 Unit 7 Concurrent programming......Page 266 Lesson 30 Goroutines and concurrency......Page 268 30.1 Starting a goroutine......Page 269 30.2 More than one goroutine......Page 271 30.3 Channels......Page 272 30.4 Channel surfing with select......Page 275 30.5 Blocking and deadlock......Page 277 30.6 A gopher assembly line......Page 278 Summary......Page 282 Lesson 31 Concurrent state......Page 284 31.1 Mutexes......Page 285 31.1.1 Mutex pitfalls......Page 288 31.2 Long-lived workers......Page 289 Summary......Page 296 32.1 A grid to rove on......Page 297 32.2 Reporting discoveries......Page 298 Under the radar......Page 300 And much more......Page 301 Lesson 1......Page 302 Lesson 3......Page 303 Lesson 4......Page 304 Capstone 5......Page 305 Lesson 7......Page 306 Lesson 8......Page 307 Lesson 9......Page 308 Capstone 11......Page 309 Lesson 13......Page 311 Lesson 14......Page 312 Capstone 15......Page 313 Lesson 16......Page 315 Lesson 17......Page 316 Lesson 19......Page 317 Capstone 20......Page 318 Lesson 22......Page 321 Lesson 23......Page 325 Lesson 24......Page 327 Capstone 25......Page 329 Lesson 26......Page 332 Lesson 27......Page 333 Lesson 28......Page 334 Capstone 29......Page 335 Lesson 30......Page 339 Lesson 31......Page 341 Capstone 32......Page 344 C......Page 354 F......Page 355 M......Page 356 P......Page 357 S......Page 358 Z......Page 359 SummaryGet 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! Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.About the TechnologyGo 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 BookHobbyists, 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 insideLanguage concepts like slices, interfaces, pointers, and concurrencySeven capstone projects featuring spacefaring gophers, Mars rovers, ciphers, and simulationsAll examples run in the Go Playground - no installation required!About the ReaderThis book is for anyone familiar with computer programming, as well as anyone with the desire to learn.About the AuthorNathan 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 ContentsUnit 0 - GETTING STARTEDGet ready, get set, Go Unit 1 - IMPERATIVE PROGRAMMINGA glorified calculator Loops and branches Variable scope Capstone: Ticket to MarsUnit 2 - TYPESReal numbers Whole numbers Big numbers Multilingual text Converting between types Capstone: The Vigenère cipher Unit 3 - BUILDING BLOCKSFunctions Methods First-class functions Capstone: Temperature tables Unit 4 - COLLECTIONSArrayed in splendor Slices: Windows into arrays A bigger slice The ever-versatile map Capstone: A slice of life Unit 5 - STATE AND BEHAVIORA little structure Go's got no class Composition and forwarding Interfaces Capstone: Martian animal sanctuary Unit 6 - DOWN THE GOPHER HOLEA few pointers Much ado about nil To err is human Capstone: Sudoku rules Unit 7 - CONCURRENT PROGRAMMINGGoroutines and concurrency Concurrent state Capstone: Life on Mars 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! Purchase Of The Print Book Includes A Free Ebook In Pdf, Kindle, And Epub Formats From Manning Publications. 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. 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! 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! This book is for anyone familiar with computer programming, as well as anyone with the desire to learn. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. "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. 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. 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! This book is for anyone familiar with computer programming, as well as anyone with the desire to learn."--Page 4 de la couverture

قیمت نهایی

۴۹٬۰۰۰ تومان