num_pages: 606
description:  Exploring the major features and packages of Go along with its types and data-structures enabling the reader to write threadsafe concurrent cloud and network applications Key Features Not your typical introduction to the Golang programming language Exploring Golang cradle to grave completes the developers Golang education A thorough exploration into the core libraries and Golang features that usually are taken for granted In depth explanation detailing the rationale behind composite data types Golang concurrency and the Golang networking library Book Description Often referred to as Golang (albeit wrongly) the Go programming language is really making strides thanks to some masterclass developments architected by the greatest programming minds. Shopify CEO Tobias Lutke has been recently quoted as saying Go will be the server language of the future. Go programmers are in high demand but - more controversially - Go takes the stage where C and Unix programmers previously led the way.The growth of the Go language has seen it become the means by which systems networking web and cloud applications are implemented. If youre a Go programmer youll already know some Go syntax and will have written some small projects. However most Go programmers face the difficulty of having to integrate their Golang skills with production code. With Mastering Go the author shows you just how to tackle this problem. You'll benefit by mastering the use of the libraries and utilize its features speed and efficiency for which the Go ecology is justly famous.Offering a compendium of Go the book begins with an account of how Go has been implemented. You'll also benefit from an in-depth account of concurrency and systems and network programming imperative for modern-day native cloud development through the course of the book. What you will learn Understand the design choices of Golang syntax Know enough Go internals to be able to optimize Golang code Appreciate concurrency models available in Golang Understand the interplay of systems and networking code Write server-level code that plays well in all environments Understand the context and appropriate use of Go data types and data structures Who this book is for This book is for Golang programmers. You should have previously read an introductory book on Go or to have worked through the Tour of Go or an equivalent online course. This book will definitely help to remember the basic concepts of concurrency but network programming will be explained. A certain amount of previous coding and production experience would be helpful. Table of Contents Go and the Operating System Understanding Go Internals Working with Basic Go Data Types The Uses of Composite Types Enhancing Go Code with Data Structures What You Might Not Know About Go Packages Reflection and Interfaces for All Seasons Telling a Unix System What to Do Go Concurrency  Goroutines Channels and Pipelines Go Concurrency  Advanced Topics Code Testing Optimization and Profiling The Foundations of Network Programming in Go Network Programming  Building Servers and Clients 
language: None
title: Mastering Go: Create Golang production applications using network libraries, concurrency, and advanced Go data structures
publisher: Packt Publishing