Skip to content

Latest commit

 

History

History
88 lines (57 loc) · 3.28 KB

README.md

File metadata and controls

88 lines (57 loc) · 3.28 KB

Golang Beginner Roadmap

Welcome to our beginner-friendly roadmap for learning Go (Golang)! This concise guide is designed to gently introduce newcomers to the language, focusing on fundamental concepts without overwhelming you with excessive content. Whether you're curious about programming or transitioning from another language, this roadmap will provide a clear path for acquiring essential skills and building a solid foundation in Go development. Let's embark on this journey together and unlock the exciting world of Go programming!

Give a Star! ⭐

If you find this project useful for learning or starting your own solution, we would greatly appreciate it if you could give it a ⭐ star.
Thank you for your support!

Roadmap

Golang Beginner Roadmap

Resources

  1. Prerequisites

  2. General Development Skills

    • Learn GIT, create a few repositories on GitHub, share your code with other people
    • Know HTTP(S) protocol, request methods (GET, POST, PUT, PATCH, DELETE, OPTIONS)
    • Learn about implementation of a basic Authentication
    • Read a few books about algorithms and data structures
    • Solid principles, architectural & design patterns, ecc
    • Basics of software testing (unit, integration, e2e)
    • SQL
  3. CLI Tools

    1. cobra
  4. Web Frameworks + Routers

    1. Gin
    2. Chi
    3. Echo
    4. Fiber
  5. Databases

    1. Relational
      1. MySQL
      2. PostgreSQL
      3. MariaDB
    2. NoSQL
  6. ORMs

    1. Gorm
  7. Caching

    1. GCache
  8. Logging

    1. Log Frameworks
  9. Testing

    1. Unit, Behavior, Integration Testing
      1. GoMock
      2. Testify
  10. Next Step

Contribution

The roadmap is built using Draw.io. Project file can be found at ./go-beginner/golang-beginner-roadmap.drawio.xml file. To modify it, open draw.io, click Open Existing Diagram and choose xml file with project. It will open the roadmap for you. Update it, upload and update the images in readme and create a PR (export as png with 400% zoom and minify that with Compressor.io).

  • Open a pull request with improvements
  • Discuss ideas in issues
  • Spread the word

License

License: CC BY-NC-SA 4.0