Course Outline


Understanding Unix Systems Programming

Understanding the Go Programming Language and the Go Architecture

Installing and Configuring the Go Development Environment

Learning the Basics of Go Syntax

Working with Go Packages

Algorithms, Data Structures

How Go Handles Garbage Collection

Dealing with Files and Directories in Go

Implementing File Input and Output Operations in Go

Implementing Error Handling

Identifying and Working with System Files in Go: Log Files, System Files Operations, and Passwords

Working with Unix Processes and Signals in Go

  • Understanding Unix Processes and Signals
  • Process Management
  • Dealing with Unix Signals in Go
  • Using the 'kill' Command
  • Working with Unix Pipes and Sockets in Go
  • Working with Remote Procedure Call (RPC) in Go
  • Programming a Unix Shell in Go

Understanding and Working with Goroutines

  • Learning About Goroutines
  • Using the Sync Go Packages
  • Dealing with Pipelines
  • Using the Go Scheduler
  • Using the 'select' Keyword
  • Working with Signal Channels and Buffered Channels
  • Handling Timeouts
  • Working with Channels of Channels
  • Working with Nil Channels
  • Dealing with Shared Memory
  • Working with the dWC.go Utility

Network Programming in Go

  • Understanding Network Programming
  • Working with the Net Go Standard Package
  • Revisiting Unix Sockets
  • Performing DNS Lookups
  • Developing a Simple TCP Server and a Simple TCP Client
  • Developing a Simple UDP Server and a Simple UDP Client
  • Working with a Concurrent TCP Server


Summary and Conclusion


  • Basic programming experience in any language
  • Familiarity with the Linux and Unix systems
  35 Hours


Related Courses

BASH Programming

  14 hours

Bash Scripting for Automation

  21 hours

Red Hat System Administration II

  35 hours

Red Hat Enterprise Linux Automation with Ansible (RH294)

  35 hours

Red Hat OpenShift Development II: Containerizing Applications

  35 hours


  7 hours

Red Hat Enterprise Linux Automation with Ansible and exam (RH295)

  35 hours

Developing Applications For Linux (LFD401)

  28 hours

Advanced Boot Camp for Developers Infomatica PowerCenter 9.5.1

  28 hours

Installation and Configuration of Infomatica

  7 hours

Infomatica MFT

  70 hours

Infomatica Master Data Management (MDM)

  28 hours

Linux Enterprise Automation (LFS430)

  28 hours

Open Source Virtualization (LFS462)

  28 hours

Linux for System Engineers (LFS311)

  28 hours