close menu
Bookswagon-24x7 online bookstore
close menu
My Account
45%
Go Programming Language For Dummies

Go Programming Language For Dummies

          
5
4
3
2
1

International Edition


Premium quality
Premium quality
Bookswagon upholds the quality by delivering untarnished books. Quality, services and satisfaction are everything for us!
Easy Return
Easy return
Not satisfied with this product! Keep it in original condition and packaging to avail easy return policy.
Certified product
Certified product
First impression is the last impression! Address the book’s certification page, ISBN, publisher’s name, copyright page and print quality.
Secure Checkout
Secure checkout
Security at its finest! Login, browse, purchase and pay, every step is safe and secured.
Money back guarantee
Money-back guarantee:
It’s all about customers! For any kind of bad experience with the product, get your actual amount back after returning the product.
On time delivery
On-time delivery
At your doorstep on time! Get this book delivered without any delay.
Quantity:
Add to Wishlist

About the Book

Ready, set, program with Go! 

Now is the perfect time to learn the Go Programming Language. It’s one of the most in-demand languages among tech recruiters and developers love its simplicity and power. Go Programming Language For Dummies is an easy way to add this top job skill to your toolkit. Written for novice and experienced coders alike, this book traverses basic syntax, writing functions, organizing data, building packages, and interfacing with APIs. 

Go—or GoLang, as it’s also known—has proven to be a strong choice for developers creating applications for the cloud-based world we live in. This book will put you on the path to using the language that’s created some of  today’s leading web applications, so you can steer your career where you want to Go! 

  • Learn how Go works and start writing programs and modules 
  • Install and implement the most powerful third-party Go packages 
  • Use Go in conjunction with web services and MySQL databases 
  • Keep your codebase organized and use Go to structure data 

With this book, you can join the growing numbers of developers using Go to create 21st century solutions. Step inside to take start writing code that puts data in users’ hands. 



Table of Contents:

Introduction 1

About This Book 1

Foolish Assumptions 2

Icons Used in This Book 2

Beyond the Book 3

Where to Go from Here 3

Part 1: Getting Started with Go 5

Chapter 1: Hello, Go! 7

Seeing What Learning Go Can Do for You 8

Installing Go on Your Machine 9

macOS 10

Windows 11

Using an Integrated Development Environment with Go 12

Writing Your First Go Program 14

Compiling and running the program 15

Understanding how a Go program works 17

Making sense of the Go file structure 18

Compiling for multiple operating systems 19

Comparing Go with Other Languages 21

Syntax 21

Compilation 22

Concurrency 22

Library support 22

Chapter 2: Working with Different Data Types 23

Declaring Always-Changing Variables 24

Using the var keyword: Type-inferred variables 24

Specifying the data type: Explicitly typed variables 25

Using the short variable declaration operator 26

Declaring Never-Changing Constants 27

Removing Unused Variables 27

Dealing with Strings 29

Performing Type Conversions 30

Discovering the type of a variable 31

Converting a variable’s type 32

Interpolating strings 34

Chapter 3: Making Decisions 37

Using If/Else Statements to Make Decisions 37

Laying the foundation for the if/else statement: Logical and comparison operators 38

Using the if/else statement 40

Short-circuiting: Evaluating conditions in Go 42

When You Have Too Many Conditions: Using the Switch Statement 46

Switching with fall-throughs 47

Matching multiple cases 48

Switching without condition 48

Chapter 4: Over and Over and Over: Using Loops 51

Performing Loops Using the for Statement 51

Iterating over a Range of Values 56

Iterating through arrays/slices 56

Iterating through a string 58

Using Labels with the for Loop 59

Chapter 5: Grouping Code into Functions 65

Defining a Function 65

Defining functions with parameters 66

Defining functions with multiple parameters 68

Passing arguments by value and by pointer 68

Returning values from functions 71

Naming return values 72

Working with variadic functions 72

Using Anonymous Functions 73

Declaring an anonymous function 73

Implementing closure using anonymous functions 74

Implementing the filter() function using closure 76

Part 2: Working with Data Structures 79

Chapter 6: Slicing and Dicing Using Arrays and Slices 81

Arming Yourself to Use Arrays 81

Declaring an array 82

Initializing an array 83

Working with multidimensional arrays 83

Sleuthing Out the Secrets of Slices 86

Creating an empty slice 86

Creating and initializing a slice 88

Appending to a slice 88

Slicing and Ranging 92

Extracting part of an array or slice 92

Iterating through a slice 95

Making copies of an array or slice 95

Inserting an item into a slice 97

Removing an item from a slice 99

Chapter 7: Defining the Blueprints of Your Data Using Structs 101

Defining Structs for a Collection of Items 101

Creating a Go Struct 104

Making a Copy of a Struct 105

Defining Methods in Structs 107

Comparing Structs 110

Chapter 8: Establishing Relationships Using Maps 113

Creating Maps in Go 113

Initializing a map with a map literal 115

Checking the existence of a key 115

Deleting a key 116

Getting the number of items in a map 116

Iterating over a map 117

Getting all the keys in a map 117

Setting the iteration order in a map 118

Sorting the items in a map by values 118

Using Structs and Maps in Go 121

Creating a map of structs 121

Sorting a map of structs 124

Chapter 9: Encoding and Decoding Data Using JSON 129

Getting Acquainted with JSON 129

Object 130

String 130

Boolean 131

Number 131

Object 132

Array 132

null 133

Decoding JSON 134

Decoding JSON to a struct 135

Decoding JSON to arrays 136

Decoding embedded objects 137

Mapping custom attribute names 140

Mapping unstructured data 141

Encoding JSON 144

Encoding structs to JSON 144

Encoding interfaces to JSON 148

Chapter 10: Defining Method Signatures Using Interfaces 151

Working with Interfaces in Go 152

Defining an interface 152

Implementing an interface 153

Looking at How You May Use Interfaces 154

Adding methods to a type that doesn’t satisfy an interface 158

Using the Stringer interface 159

Implementing multiple interfaces 160

Using an empty interface 161

Determining whether a value implements a specific interface 162

Part 3: Multitasking in Go 163

Chapter 11: Threading Using Goroutines 165

Understanding Goroutines 166

Using Goroutines with Shared Resources 168

Seeing how shared resources impact goroutines 168

Accessing shared resources using mutual exclusion 171

Using atomic counters for modifying shared resources 172

Synchronizing Goroutines 174

Chapter 12: Communicating between Goroutines Using Channels 179

Understanding Channels 179

How channels work 180

How channels are used 183

Iterating through Channels 186

Asynchronously Waiting on Channels 187

Using Buffered Channels 192

Part 4: Organizing Your Code 195

Chapter 13: Using and Creating Packages in Go 197

Working with Packages 197

Creating shareable packages 200

Organizing packages using directories 202

Using Third-Party Packages 204

Emojis for Go 204

Go Documentation 205

Chapter 14: Grouping Packages into Modules 211

Creating a Module 211

Testing and Building a Module 214

Publishing a Module on GitHub 216

Part 5: Seeing Go in Action 223

Chapter 15: Consuming Web APIs Using Go 225

Understanding Web APIs 225

Fetching Data from Web Services in Go 226

Writing a Go program to connect to a web API 227

Decoding JSON data 229

Refactoring the code for decoding JSON data 233

Fetching from multiple web services at the same time 238

Returning Goroutine’s results to the main() function 239

Chapter 16: Getting Ready to Serve Using REST APIs 243

Building Web Services Using REST APIs 243

HTTP messages 244

REST URLs 244

REST methods 246

REST response 248

Creating a REST API in Go 249

Getting your REST API up and running 249

Testing the REST API 251

Registering additional paths 251

Passing in query string 254

Specifying request methods 255

Storing the course information on the REST API 257

Testing the REST API again 267

Chapter 17: Working with Databases 271

Setting Up a MySQL Database Server 272

Interfacing with the MySQL server 272

Creating a database and table 274

Creating a new account and granting permission 275

Connecting to the MySQL Database in Go 276

Retrieving a record 278

Adding a record 280

Modifying a record 281

Deleting a record 283

Part 6: The Part of Tens 285

Chapter 18: Ten Useful Go Packages to Create Applications 287

color 287

Installation 288

Code sample 288

now 288

Installation 288

Code sample 288

go-pushbullet 289

Installation 289

Code sample 289

goid 290

Installation 290

Code sample 290

json2go 291

Installation 291

Code sample 291

gojq 292

Installation 293

Code sample 293

turtle 294

Installation 294

Code sample 294

go-http-client 295

Installation 295

Code sample 295

notify 296

Installation 296

Code sample 296

gosx-notifier 297

Installation 297

Code sample 297

Chapter 19: Ten Great Go Resources 299

The Official Go Website 299

Go by Example 300

A Tour of Go 300

The Go Frequently Asked Questions 300

The Go Playground 300

Go Bootcamp 301

Effective Go 301

Gophercises 301

Tutorialspoint 301

Stack Overflow 302

Index 303


Best Seller

| | See All


Product Details
  • ISBN-13: 9781119786191
  • Publisher: John Wiley & Sons Inc
  • Publisher Imprint: For Dummies
  • Height: 234 mm
  • No of Pages: 336
  • Spine Width: 23 mm
  • Width: 185 mm
  • ISBN-10: 1119786193
  • Publisher Date: 24 Jun 2021
  • Binding: Paperback
  • Language: English
  • Returnable: N
  • Weight: 454 gr


Similar Products

How would you rate your experience shopping for books on Bookswagon?

Add Photo
Add Photo

Customer Reviews

REVIEWS           
Click Here To Be The First to Review this Product
Go Programming Language For Dummies
John Wiley & Sons Inc -
Go Programming Language For Dummies
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Go Programming Language For Dummies

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book
    Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    | | See All


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!
    ASK VIDYA