Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Mastering Go: Create Golang production applications using network libraries, concurrency, and advanced Go data structures

Buy

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 developer's 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 you're a Go programmer, you'll 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

  1. Go and the Operating System
  2. Understanding Go Internals
  3. Working with Basic Go Data Types
  4. The Uses of Composite Types
  5. Enhancing Go Code with Data Structures
  6. What You Might Not Know About Go Packages
  7. Reflection and Interfaces for All Seasons
  8. Telling a Unix System What to Do
  9. Go Concurrency – Goroutines, Channels, and Pipelines
  10. Go Concurrency – Advanced Topics
  11. Code Testing, Optimization, and Profiling
  12. The Foundations of Network Programming in Go
  13. Network Programming – Building Servers and Clients
(HTML tags aren't allowed.)

Security for Software Engineers
Security for Software Engineers

Security for Software Engineers is designed to introduce security concepts to undergraduate software engineering students. The book is divided into four units, each targeting activities that a software engineer will likely be involved in within industry.

The book explores the key areas of attack...

The Definitive Guide to Modern Java Clients with JavaFX: Cross-Platform Mobile and Cloud Development
The Definitive Guide to Modern Java Clients with JavaFX: Cross-Platform Mobile and Cloud Development
Build enhanced visual experiences and design and deploy modern, easy-to-maintain, client applications across a variety of platforms. This book will show you how these applications can take advantage of the latest user interface components, 3D technology, and cloud services to create immersive visualizations and allow...
Quantum Dots: Research, Technology and Applications
Quantum Dots: Research, Technology and Applications
Since first developed in the early sixties, silicon chip technology has made vast leaps forward. From a rudimentary circuit with a mere handful of transistors, the chip has evolved into a technological wonder, packing millions of bits of information on a surface no larger that a human thumbnail. And most experts predict that in the near future, we...

Solidity Programming Essentials: A beginner's guide to build smart contracts for Ethereum and blockchain
Solidity Programming Essentials: A beginner's guide to build smart contracts for Ethereum and blockchain

Learn the most powerful primary programming language for writing smart contracts and discover how to write, deploy, and test smart contracts in Ethereum

Key Features

  • Get up and running with the Solidity programming language
  • Use Solidity as a scripting language to build...
Pro JavaFX 8: A Definitive Guide to Building Desktop, Mobile, and Embedded Java Clients
Pro JavaFX 8: A Definitive Guide to Building Desktop, Mobile, and Embedded Java Clients

In Pro JavaFX 8 expert authors show you how to use the JavaFX platform to create rich-client Java applications. You'll discover how you can use this powerful Java-based UI platform, which is capable of handling large-scale data-driven business applications for PC as well as now mobile and embedded devices.

Covering the...

Algorithms in a Nutshell: A Practical Guide
Algorithms in a Nutshell: A Practical Guide

Creating robust software requires the use of efficient algorithms, but programmers seldom think about them until a problem occurs. This updated edition of Algorithms in a Nutshell describes a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your...

©2019 LearnIT (support@pdfchm.net) - Privacy Policy