Hands-On-Systems-Programming-with-Go

module
v0.0.0-...-71e9170 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 30, 2023 License: MIT

README

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!

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.

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.

Download a free PDF

If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.

https://packt.link/free-ebook/9781789804072

Directories

Path Synopsis
Chapter04
Chapter05
Chapter06
Chapter07
Chapter08
Chapter09
Chapter10
proto/gen
Package gen is a generated protocol buffer package.
Package gen is a generated protocol buffer package.
Chapter11
Chapter12
Chapter13
Chapter14
fan
Chapter15
use
Chapter16

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL