Course Outline
Introduction
Foundations of Unix Systems Programming
Overview of the Go Language and Go Architecture
Deployment and Configuration of the Go Development Environment
Core Go Syntax Fundamentals
Managing Go Packages
Algorithms and Data Structures
Mechanisms of Garbage Collection in Go
Manipulation of Files and Directories in Go
Execution of File Input and Output Operations in Go
Implementation of Robust Error Handling
Interaction with System Files in Go: Log Management, File Operations, and Credential Handling
Management of Unix Processes and Signals in Go
- Concepts of Unix Processes and Signals
- Process Administration
- Handling Unix Signals within Go
- Application of the 'kill' Command
- Utilization of Unix Pipes and Sockets in Go
- Implementation of Remote Procedure Call (RPC) in Go
- Construction of a Unix Shell in Go
Concepts and Application of Goroutines
- Foundations of Goroutines
- Utilization of Sync Go Packages
- Pipeline Management
- Application of the Go Scheduler
- Usage of the 'select' Keyword
- Management of Signal Channels and Buffered Channels
- Timeout Control
- Operation of Channels of Channels
- Management of Nil Channels
- Shared Memory Protocols
- Application of the dWC.go Utility
Network Programming within the Go Framework
- Principles of Network Programming
- Implementation of the Net Go Standard Package
- Advanced Unix Socket Protocols
- Execution of DNS Resolutions
- Development of Basic TCP Server and Client Applications
- Development of Basic UDP Server and Client Applications
- Implementation of Concurrent TCP Servers
Diagnostic and Troubleshooting Procedures
Concluding Summary
Requirements
- Foundational programming experience in any language
- Proficiency with Linux and Unix system architectures
Testimonials (5)
Trainer's expertise and teaching talent
Liviu - Orange Services
Course - Go for Systems Programming
Time efficient Smooth and linked transitions from one topic to another Examples ranging from simple to challenging So much patience for answering every questions with examples Knowledge way beyond expectations So many things to appreciate!
Laura - Orange Services
Course - Go for Systems Programming
The trainer's attitude and the fact that he stopped at each problem/issue to help the ones in need He was also pretty laid back, making the training actually kind of fun and relaxing
Rares - Orange Services
Course - Go for Systems Programming
Patrick was very helpful and provided real world examples and practices when working with Go. This was not a purely theoretical course on how to use Go, but how to actually develop with Go in the real world. He provided comparison with other languages in order to better explain certain concepts, which was very useful.
Cristian - Orange Services
Course - Go for Systems Programming
The extra informations not in the official docs