Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/labex-labs/go-practice-challenges

[Go Practice Challenges] This repository collects 80 of programming scenarios (labs and challenges) for Go Practice Challenges. This course contains lots of challenges for Go, each challenge is a small Go project with detailed instructions and solutions. You can practice your Go skills by solving...
https://github.com/labex-labs/go-practice-challenges

List: go-practice-challenges

awesome awesome-list challenges course education go hands-on labex labs programming

Last synced: 5 days ago
JSON representation

[Go Practice Challenges] This repository collects 80 of programming scenarios (labs and challenges) for Go Practice Challenges. This course contains lots of challenges for Go, each challenge is a small Go project with detailed instructions and solutions. You can practice your Go skills by solving...

Awesome Lists containing this project

README

        

# Go Practice Challenges

[![Go Practice Challenges](https://cover-creator.appbot.io/go-practice-challenges.png)](https://labex.io/courses/go-practice-challenges)

[![Start-Learning](https://img.shields.io/badge/Start-Learning-whitesmoke?style=for-the-badge)](https://labex.io/courses/go-practice-challenges)

This course contains lots of challenges for Go, each challenge is a small Go project with detailed instructions and solutions. You can practice your Go skills by solving these challenges, improve your problem-solving skills, and learn how to write clean and efficient code.

![Go](https://img.shields.io/badge/Go-whitesmoke?style=for-the-badge&logo=go)

## Environment

LabEx is an interactive, hands-on learning platform dedicated to coding and technology. It combines labs, AI assistance, and virtual machines to provide a no-video, practical learning experience.

![](https://tutorial-screenshot.getvm.io/images/vm-1725247253.png)

- A strict β€œLearn by Doing” approach with exclusive hands-on labs and no videos.
- Interactive online environments within the browser, with automated step-by-step checks.
- A structured content organization with the Skill Tree based learning system.
- A growing learning resource of 30 Skill Trees and over 6,000 Labs.
- The AI learning assistant Labby, built on ChatGPT, providing a conversational learning experience.

Learn more about [LabEx VM](https://support.labex.io/using-labex/virtual-machine).

## Exercises

| Index | Name | Difficulty | Practice |
|---------|---------------------------------------------------------|--------------|----------------------------------------------------------------------------------------------------------------------------------------------|
| 01 | 🎯 Go Fundamentals Value Types | β˜…β˜†β˜† | Start Challenge |
| 02 | 🎯 Golang Constants Programming Challenge | β˜…β˜†β˜† | Start Challenge |
| 03 | 🎯 Golang Variable Manipulation | β˜…β˜†β˜† | Start Challenge |
| 04 | 🎯 Hello World, Golang! | β˜…β˜†β˜† | Start Challenge |
| 05 | 🎯 Golang String Formatting | β˜…β˜†β˜† | Start Challenge |
| 06 | 🎯 Golang String Manipulation | β˜…β˜†β˜† | Start Challenge |
| 07 | 🎯 Strings and Runes | Challenge | β˜…β˜†β˜† | Start Challenge |
| 08 | 🎯 Array Manipulation in Go | β˜…β˜†β˜† | Start Challenge |
| 09 | 🎯 Go Slice Data Type | β˜…β˜†β˜† | Start Challenge |
| 10 | 🎯 Creating and Manipulating Go Maps | Challenge | β˜…β˜†β˜† | Start Challenge |
| 11 | 🎯 Go Struct Data Grouping | β˜…β˜†β˜† | Start Challenge |
| 12 | 🎯 Golang Pointers Challenge: Understanding Reference... | β˜…β˜†β˜† | Start Challenge |
| 13 | 🎯 Golang For Loop | β˜…β˜†β˜† | Start Challenge |
| 14 | 🎯 Golang If-Else Branching | β˜…β˜†β˜† | Start Challenge |
| 15 | 🎯 Concise Introduction to Switch Statement | β˜…β˜†β˜† | Start Challenge |
| 16 | 🎯 Go Functions Fundamentals | β˜…β˜†β˜† | Start Challenge |
| 17 | 🎯 Multiple Return Values | Challenge | β˜…β˜†β˜† | Start Challenge |
| 18 | 🎯 Variadic Functions in Go | β˜…β˜†β˜† | Start Challenge |
| 19 | 🎯 Go Programming Method | β˜…β˜†β˜† | Start Challenge |
| 20 | 🎯 Golang Interface Exploration | β˜…β˜†β˜† | Start Challenge |
| 21 | 🎯 Embedding Structs in Golang | β˜…β˜†β˜† | Start Challenge |
| 22 | 🎯 Exploring Golang's Range Keyword | β˜…β˜†β˜† | Start Challenge |
| 23 | 🎯 Handling Errors in Golang | Challenge | β˜…β˜†β˜† | Start Challenge |
| 24 | 🎯 Handling Unexpected Errors in Golang | β˜…β˜†β˜† | Start Challenge |
| 25 | 🎯 Deferred Function Execution Cleanup | β˜…β˜†β˜† | Start Challenge |
| 26 | 🎯 Handling Panics with Golang's Recover | β˜…β˜†β˜† | Start Challenge |
| 27 | 🎯 Golang Generics Introduction | β˜…β˜†β˜† | Start Challenge |
| 28 | 🎯 Creating Closures with Anonymous Functions in Go |... | β˜…β˜†β˜† | Start Challenge |
| 29 | 🎯 Recursive Functions in Go | β˜…β˜†β˜† | Start Challenge |
| 30 | 🎯 Concurrent Goroutines in Golang | β˜…β˜†β˜† | Start Challenge |
| 31 | 🎯 Golang Buffered Channels | β˜…β˜†β˜† | Start Challenge |
| 32 | 🎯 Golang Channel Function Parameters | Challenge | β˜…β˜†β˜† | Start Challenge |
| 33 | 🎯 Synchronize Goroutines with Channels | β˜…β˜†β˜† | Start Challenge |
| 34 | 🎯 Go Channels Concurrency | β˜…β˜†β˜† | Start Challenge |
| 35 | 🎯 Golang Channel Communication with Workers | Challe... | β˜…β˜†β˜† | Start Challenge |
| 36 | 🎯 Non-Blocking Channel Operations | Challenge | β˜…β˜†β˜† | Start Challenge |
| 37 | 🎯 Range Over Channels | Challenge | β˜…β˜†β˜† | Start Challenge |
| 38 | 🎯 Go Select Statement | β˜…β˜†β˜† | Start Challenge |
| 39 | 🎯 Implementing Timeouts in Go Using Channels | β˜…β˜†β˜† | Start Challenge |
| 40 | 🎯 Golang Timer and Ticker | β˜…β˜†β˜† | Start Challenge |
| 41 | 🎯 Timers and Tickers | Challenge | β˜…β˜†β˜† | Start Challenge |
| 42 | 🎯 Concurrent Worker Pool with Goroutines | β˜…β˜†β˜† | Start Challenge |
| 43 | 🎯 Using WaitGroup in Goroutines | β˜…β˜†β˜† | Start Challenge |
| 44 | 🎯 Implementing Rate Limiting in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 45 | 🎯 Atomic Counters in Concurrent Go Programming | β˜…β˜†β˜† | Start Challenge |
| 46 | 🎯 Concurrent Data Access with Mutexes | Challenge | β˜…β˜†β˜† | Start Challenge |
| 47 | 🎯 Synchronize Shared State with Goroutines | β˜…β˜†β˜† | Start Challenge |
| 48 | 🎯 Reading Files in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 49 | 🎯 Write Files in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 50 | 🎯 Concise Go Text Transformation | β˜…β˜†β˜† | Start Challenge |
| 51 | 🎯 File Path Handling in Golang | Challenge | β˜…β˜†β˜† | Start Challenge |
| 52 | 🎯 Working with Directories in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 53 | 🎯 Temporary Files and Directories | Challenge | β˜…β˜†β˜† | Start Challenge |
| 54 | 🎯 Embedding Files in Go Programs | β˜…β˜†β˜† | Start Challenge |
| 55 | 🎯 Sorting Built-in Types in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 56 | 🎯 Sorting by Functions | Challenge | β˜…β˜†β˜† | Start Challenge |
| 57 | 🎯 Golang Text Template Dynamic Content | β˜…β˜†β˜† | Start Challenge |
| 58 | 🎯 Go Regular Expression Demonstration | β˜…β˜†β˜† | Start Challenge |
| 59 | 🎯 Encoding and Decoding JSON in Golang | β˜…β˜†β˜† | Start Challenge |
| 60 | 🎯 Golang XML Mapping | β˜…β˜†β˜† | Start Challenge |
| 61 | 🎯 Go Time and Duration | β˜…β˜†β˜† | Start Challenge |
| 62 | 🎯 Golang Epoch Time | β˜…β˜†β˜† | Start Challenge |
| 63 | 🎯 Time Formatting and Parsing | Challenge | β˜…β˜†β˜† | Start Challenge |
| 64 | 🎯 Random Number Generation in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 65 | 🎯 Parse Numbers in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 66 | 🎯 Parsing URLs in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 67 | 🎯 Compute SHA256 Hashes in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 68 | 🎯 Base64 Encoding Challenge in Go | β˜…β˜†β˜† | Start Challenge |
| 69 | 🎯 Testing and Benchmarking | Challenge | β˜…β˜†β˜† | Start Challenge |
| 70 | 🎯 Command-Line Argument Handling in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 71 | 🎯 Command-Line Flag Parsing in Golang | β˜…β˜†β˜† | Start Challenge |
| 72 | 🎯 Command Line Subcommands | Challenge | β˜…β˜†β˜† | Start Challenge |
| 73 | 🎯 Unix Environment Variables | β˜…β˜†β˜† | Start Challenge |
| 74 | 🎯 Golang HTTP Request Handling | Challenge | β˜…β˜†β˜† | Start Challenge |
| 75 | 🎯 Build Basic HTTP Server in Go | β˜…β˜†β˜† | Start Challenge |
| 76 | 🎯 Golang Context Cancellation Demonstration | Challe... | β˜…β˜†β˜† | Start Challenge |
| 77 | 🎯 Replacing Go Process with Exec Function | β˜…β˜†β˜† | Start Challenge |
| 78 | 🎯 Spawning External Processes in Go | Challenge | β˜…β˜†β˜† | Start Challenge |
| 79 | 🎯 Handling Unix Signals in Go Programs | β˜…β˜†β˜† | Start Challenge |
| 80 | 🎯 Exit Challenge in Go | β˜…β˜†β˜† | Start Challenge |

## More

- πŸ”— [Go Programming Courses](https://github.com/labex-labs/awesome-programming-courses)
- πŸ”— [Go Programming Projects](https://github.com/labex-labs/awesome-programming-projects)
- πŸ”— [Go Free Tutorials](https://github.com/labex-labs/go-free-tutorials)