Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Mastering Go
Mastering Go

Mastering Go: Create Golang production applications using network libraries, concurrency, machine learning, and advanced data structures , Second Edition

Arrow left icon
Profile Icon Mihalis Tsoukalos
Arrow right icon
Free Trial
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1 (33 Ratings)
Paperback Aug 2019 798 pages 2nd Edition
eBook
Can$59.99 Can$66.99
Paperback
Can$83.99
Subscription
Free Trial
Arrow left icon
Profile Icon Mihalis Tsoukalos
Arrow right icon
Free Trial
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1 (33 Ratings)
Paperback Aug 2019 798 pages 2nd Edition
eBook
Can$59.99 Can$66.99
Paperback
Can$83.99
Subscription
Free Trial
eBook
Can$59.99 Can$66.99
Paperback
Can$83.99
Subscription
Free Trial

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Mastering Go

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Second edition of the bestselling guide to advanced Go programming, expanded to cover machine learning, more Go packages and a range of modern development techniques
  • Completes the Go developer’s education with real-world guides to building high-performance production systems
  • Packed with practical examples and patterns to apply to your own development work
  • Clearly explains Go nuances and features to remove the frustration from Go development

Description

Often referred to (incorrectly) as Golang, Go is the high-performance systems language of the future. Mastering Go, Second Edition helps you become a productive expert Go programmer, building and improving on the groundbreaking first edition. Mastering Go, Second Edition shows how to put Go to work on real production systems. For programmers who already know the Go language basics, this book provides examples, patterns, and clear explanations to help you deeply understand Go’s capabilities and apply them in your programming work. The book covers the nuances of Go, with in-depth guides on types and structures, packages, concurrency, network programming, compiler design, optimization, and more. Each chapter ends with exercises and resources to fully embed your new knowledge. This second edition includes a completely new chapter on machine learning in Go, guiding you from the foundation statistics techniques through simple regression and clustering to classification, neural networks, and anomaly detection. Other chapters are expanded to cover using Go with Docker and Kubernetes, Git, WebAssembly, JSON, and more. If you take the Go programming language seriously, the second edition of this book is an essential guide on expert techniques.

Who is this book for?

Mastering Go, Second Edition is for Go programmers who already know the language basics, and want to become expert Go practitioners.

What you will learn

  • Clear guidance on using Go for production systems
  • Detailed explanations of how Go internals work, the design choices behind the language, and how to optimize your Go code
  • A full guide to all Go data types, composite types, and data structures
  • Master packages, reflection, and interfaces for effective Go programming
  • Build high-performance systems networking code, including server and client-side applications
  • Interface with other systems using WebAssembly, JSON, and gRPC
  • Write reliable, high-performance concurrent code
  • Build machine learning systems in Go, from simple statistical regression to complex neural networks

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Aug 29, 2019
Length: 798 pages
Edition : 2nd
Language : English
ISBN-13 : 9781838559335
Category :
Languages :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Aug 29, 2019
Length: 798 pages
Edition : 2nd
Language : English
ISBN-13 : 9781838559335
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just Can$6 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just Can$6 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total Can$ 195.97
Go Programming Cookbook
Can$55.99
The Go Workshop
Can$55.99
Mastering Go
Can$83.99
Total Can$ 195.97 Stars icon

Table of Contents

15 Chapters
Go and the Operating System Chevron down icon Chevron up icon
Understanding Go Internals Chevron down icon Chevron up icon
Working with Basic Go Data Types Chevron down icon Chevron up icon
The Uses of Composite Types Chevron down icon Chevron up icon
How to Enhance Go Code with Data Structures Chevron down icon Chevron up icon
What You Might Not Know About Go Packages and Functions Chevron down icon Chevron up icon
Reflection and Interfaces for All Seasons Chevron down icon Chevron up icon
Telling a UNIX System What to Do Chevron down icon Chevron up icon
Concurrency in Go – Goroutines, Channels, and Pipelines Chevron down icon Chevron up icon
Concurrency in Go – Advanced Topics Chevron down icon Chevron up icon
Code Testing, Optimization, and Profiling Chevron down icon Chevron up icon
The Foundations of Network Programming in Go Chevron down icon Chevron up icon
Network Programming – Building Your Own Servers and Clients Chevron down icon Chevron up icon
Machine Learning in Go Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.1
(33 Ratings)
5 star 60.6%
4 star 12.1%
3 star 9.1%
2 star 15.2%
1 star 3%
Filter icon Filter
Top Reviews

Filter reviews by




cd Dec 22, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I have just started reading Mastering Go, 2nd edition. The book contains many useful examples that can help someone learn Go and write Go code as well. What I find really handy is that it contains the required theory to understand the why of topics such Go data types, data structures, the Go Garbage Collector and the Go Scheduler.Overall, a great book.
Amazon Verified review Amazon
Vlad Bezden Nov 17, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Great book! It covers everything from how to start with Go to Machine Learning (ML) in Go. It has very good examples, with code and code output, so you don't have to write your code to see the result. Another good thing about this book that it covers Go version 1.13 and it has a chapter dedicated to Go modules and Go packages, which is very important. I read other books and usually, they don't cover this topic. Mihalis, cover this topic by going deeply starting with one package and then how to extend it to the module and how to pack, and deploy them. This book has two chapters on concurrency (Goroutines, channels, and pipelines), one chapter is to understand concurrency in Go and the second one is more advanced. At the end of each chapter, there is an "Exercises" chapter. Implementing those exercises you will learn much more about Go.I'm very strongly agreed that after you read this book you will become "master" in Go.
Amazon Verified review Amazon
No name Sep 19, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Based on the 1st edition but with more content. Still an excellent book that you can use as a reference and for learning Go.
Amazon Verified review Amazon
Kevin C Sep 20, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This book is huge and covers a lot of topics! This book is primarily for developers who want to gain a greater understanding of the power of Go and how to do more cool things with the language.Pros:- Concepts are explained in a simple manner. For example, the author introduces a new concept or tool with Go and explains why you might want to use it and when.- Made me a better Go developer. This book has a lot of 1% tips that improve your Go knowledge.- Diverse range of topics that explained in depth.- Easy to follow along code samplesCons:- This is a huge book! So don't expect to read it in a week or two. However, read it more like a reference book for when you interested in learning how to use Go to build different projects.- The code examples are not formatted when you copy and paste into your IDE. However, this is a common issue with programming books. You can quickly fix this with the "go fmt" command.Overall: I really love this book and would recommend it! I expect to go back to this book as I code Go throughout this next year as a guided reference.Side note: I particularly enjoyed the UNIX and Concurrency chapters because I'm interested in building CLI tools and the power of Go as your backend programming language.
Amazon Verified review Amazon
Spiros Sep 17, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
If you want a really deep dive int Go internals and become a better Go Developer then that's the book for you. Lots of interesting topics and internals for Go and very good examples/code snippets to understand every little detail and advanced topics.I really enjoyed the sections about data structures, advanced concurrency, testing and optimization.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.