Course Outline
Introduction
Exploring Unix Systems Programming
Grasping the Go Programming Language and Go Architecture
Setting Up the Go Development Environment
Mastering Basic Go Syntax
Managing Go Packages
Algorithms and Data Structures
Examining Go's Garbage Collection Mechanisms
Handling Files and Directories in Go
Executing File Input and Output Operations in Go
Implementing Robust Error Handling
Managing System Files in Go: Log Files, System File Operations, and Passwords
Interacting with Unix Processes and Signals in Go
- Concepts of Unix Processes and Signals
- Process Management
- Handling Unix Signals in Go
- Utilizing the 'kill' Command
- Using Unix Pipes and Sockets in Go
- Implementing Remote Procedure Call (RPC) in Go
- Building a Unix Shell in Go
Mastering Goroutines
- Introduction to Goroutines
- Leveraging Go's Sync Packages
- Managing Pipelines
- Utilizing the Go Scheduler
- Employing the 'select' Keyword
- Working with Signal and Buffered Channels
- Managing Timeouts
- Handling Channels of Channels
- Working with Nil Channels
- Managing Shared Memory
- Using the dWC.go Utility
Network Programming in Go
- Fundamentals of Network Programming
- Using Go's Net Standard Package
- Reviewing Unix Sockets
- Executing DNS Lookups
- Building Basic TCP Servers and Clients
- Creating Simple UDP Servers and Clients
- Developing Concurrent TCP Servers
Debugging and Troubleshooting
Conclusion and Wrap-up
Requirements
- Foundational programming experience in any language
- Proficiency with Linux and Unix operating systems
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 6500 € + VAT*
Contact us for an exact quote and to hear our latest promotions
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