sslavic / Hands-On-System-Programming-with-Go

Published by Packt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hands-On System Programming with Go

Hands-On System Programming with Go

This is the code repository for Hands-On System Programming with Go , published by Packt.

Build modern and concurrent applications for Unix and Linux systems using Golang

What is this book about?

System software and applications are usually created using low level programming languages such as C/C++. Go is a modern language which combines simplicity, concurrency and performance which makes it a great candidate for building system applications. The book is a guide for building system applications for Linux and OS X using Golang.

This book covers the following exciting features:

  • Gain knowledge of Unix system programming
  • Understand and use Daemon Processes in dependency implementation
  • Explore and use the Go standard library to encode complex data structures
  • Gain insights into Golang internals
  • Master the Go concurrency model and its patterns
  • Become adept at implementing the Sync and Atomic Packages
  • Understand Go allocation and Memory allocation

If you feel this book is for you, get your copy today!

https://www.packtpub.com/

Instructions and Navigations

All of the code is organized into folders. For example, Chapter02.

The code will look like the following:

<meta name="go-import" content="package-name vcs repository-url">

Following is what you need for this book: If you are a developer who wants to learn system programming with Go, this book is for you. Although no knowledge of Unix and Linux system programming is necessary, intermediate knowledge of Go will help you understand the concepts covered in the book

With the following software and hardware list you can run all code files present in the book (Chapter 1-16).

Software and Hardware List

Sr.No Software required OS required
1 Go v1.12, System with 4GB RAM Windows, Mac OS X, and Linux (Any)
2 Visual Studio Code v1.35, System with 4GB RAM Windows, Mac OS X, and Linux (Any)
3 OpenSSL v1.1.1b, System with 4GB RAM Windows, Mac OS X, and Linux (Any)
4 Protobuf v3.8.0, System with 4GB RAM Windows, Mac OS X, and Linux (Any)
5 Build Essentials (GCC v8.3.0), System with 4GB RAM Windows, Mac OS X, and Linux (Any)

We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.

Related products

Get to Know the Author

Alex Guerrieri is a software developer who specializes in backend and distributed systems. Go has been his favorite tool for the job since first using it in 2013. He holds a degree in computer science engineering and has been working in the field for more than 6 years. Originally from Italy, where he completed his studies and started his career as a full-stack developer, he now lives in Spain, where he previously worked in two start-ups-source{d} and Cabify. He is now working for three companies-as a software crafter for BBVA, one of the biggest Spanish banks; as a software architect for Security First, London, a company focusing on digital and physical security; and as a cofounder of DauMau, the company behind Vidsey, software that generates videos in a procedural manner.

Suggestions and Feedback

Click here if you have any feedback or suggestions.

About

Published by Packt

License:MIT License


Languages

Language:Go 99.9%Language:HTML 0.1%