Get in Touch
 Duration 35 hours

Course Outline

Introduction

Foundations of Unix Systems Programming

Overview of the Go Language and Its Architecture

Installation and Configuration of the Go Development Environment

Core Syntax of Go

Managing Go Packages

Algorithms and Data Structures

Garbage Collection in Go

Handling Files and Directories with Go

File Input and Output Operations in Go

Implementing Robust Error Handling

System File Management in Go: Logs, System Operations, and Passwords

Unix Processes and Signals in Go

  • Overview of Unix Processes and Signals
  • Process Management
  • Handling Unix Signals in Go
  • Utilizing the 'kill' Command
  • Unix Pipes and Sockets in Go
  • Remote Procedure Call (RPC) Implementation in Go
  • Building a Unix Shell in Go

Concepts and Implementation of Goroutines

  • Introduction to Goroutines
  • Utilizing the Sync Package
  • Managing Pipelines
  • Understanding the Go Scheduler
  • Using the 'select' Keyword
  • Signal and Buffered Channels
  • Timeout Management
  • Channels of Channels
  • Nil Channels
  • Shared Memory Management
  • Practical Application: The dWC.go Utility

Network Programming with Go

  • Principles of Network Programming
  • Using the Net Standard Package
  • Advanced Unix Sockets
  • Performing DNS Lookups
  • Building Basic TCP Servers and Clients
  • Building Basic UDP Servers and Clients
  • Implementing a Concurrent TCP Server

Troubleshooting Strategies

Summary and Wrap-up

Requirements

  • Fundamental programming proficiency in any language
  • Working knowledge of Linux and Unix operating systems

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories