MCPcopy Create free account
hub / github.com/Go-Learning-Land/Go-Learning-Archive

github.com/Go-Learning-Land/Go-Learning-Archive @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
5,888 symbols 18,668 edges 1,962 files ⚖ MIT 2,065 documented · 35% updated 2y ago★ 752 open issues

Browse by type

Functions 5,073 Types & classes 815
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Go Learning Archive

cover

Although there are many good videos and tutorials, Good Gopher never underestimates the knowledge contained in books.

Folder Structures and Indexes

  • Training => This folder contains all materials ordered ways for learning golang.(Always open for PRs)
  • Data Structures and Algorithms => This folder contains the algorithms and data structures implemented in Go
  • Basics => This folder contains basics tutorial for Golang
  • Advanced =>This folder contains Advanced tutorial for Golang
  • Clean Code => This folder contains Clean Code tips and tricks for Golang
  • Concurrency => This folder contains Concurrency tutorial for Golang
  • Testing => This folder contains Testing tutorial for Golang
  • Code Layout => This folder contains best practice for code layout
  • Distributed System => This folder contains Distributed tutorial for Golang
  • Books => This folder contains Books summary and source code for Golang
  • Security => This folder contains Security tutorial materials for Golang

Training Plan

Base boilplate is taken from here

These listed items are essential for fully covered golang training. Use this listed items to see clearly whats is next in golang education. ( Always open for PRs)

  • Basics

    • Variables
    • Array
    • Slices
    • Maps
    • Strings
    • Loops
    • Structs
    • Pointers
    • Functions
    • Errors
    • Interfaces
    • Modules
  • Concurrency

  • Basics
  • In Depth

    • Go Routines
    • Channels
    • WaitGroups
    • Mutex
    • SyncPool
    • Dead Lock
  • Garbage Collector

    • Basics
    • In Depth
  • Http Package

    • http
    • httputil
    • grpc
    • Reverse Proxy
    • Restful Api
    • Web Frameworks (echo, gin, fasthttp)
  • I/O

    • File ops.
    • Network ops.
    • Bytes
    • io.Reader
    • io.Writer
    • io.TeeReader
    • io.MultiWriter
  • CLI

    • Flags
    • Environments
    • Bytes
    • Variables
    • Parameters
    • Commands
  • GUI

  • Wails
  • GUI Examples

  • Test & Benchmarks

    • Unit Test
    • Benchmark Test
    • Tracing
    • Profiling
  • Algorithms

    • Sorting
    • LinkedList
    • Stack
    • Queue
    • Tree
    • Graphs
    • Dynamic Programming
    • Many More will be added in a future release
  • Database

    • Sql Queries
    • Transactions
    • CRUD Operations
    • Couchbase Ops
  • Examples with different DBs

  • External Communication

    • Redis
    • Rabbitmq
    • Kafka
  • Build & Distribution

    • Docker Build
    • Go Releaser
    • Github Actions
  • Architecture - Overview

    • Abstraction / Decoupling
    • Inversion Of Control
    • Dependency Injection
    • Composition Root
    • Hexagonal Architecture
    • DDD
    • CQRS
    • Event Sourcing
    • Clean Code
  • Kubernetes Extensibility

    • Accessing Kubernetes
    • Admission Webhook Concept
    • Operators

Doesn't seem enough? Then create issues and start helping!!

Selected Golang Book List

Click Here for Book List

Books

Credits

Go Bootcamp Free

This companion book contains material initially written specifically for this event as well as content from Google & the Go team under Creative Commons Attribution 3.0 License and code licensed under a BSD license. Source code of Book

Chapters of Book

Learning Go Free

A online book to start learning Golang. It features numerous exercises (and answers).

Learn Go With Tests Free

Learn Go guided by tests. Write a test, learn a new Go language feature to make it pass, refactor and repeat. You'll get a grounding in test-driven development and importantly understand the principles behind it. * Chapter 1 Install Go * Chapter 2 Hello * Chapter 3 Integers * Chapter 4 Iteration * Chapter 5 Array and Slice * Chapter 6 Structs Method and Interface * Chapter 7 Pointer and Error * Chapter 8 Maps * Chapter 9 Dependency Injection * Chapter 10 Mocking * Chapter 11 Concurrency * Chapter 12 Select * What is Reflection ? * Chapter 13 Reflection * Chapter 14 Sync * Chapter 15 Context

Go 101 Free

Go 101 is a book focusing on Go syntax/semantics and all kinds of runtime related things (Go 1.17-pre ready) and tries to help gophers gain a deep and thorough understanding of Go. This book also collects many details of Go and in Go programming. It is expected that this book is helpful for both beginner and experienced Go programmers.

Notes About Go 101

Practical Go Lessons Free

Practical Go Lessons has 41 chapters and more than 700 pages with illustrations. It is suitable for anybody how wants to start programming with the Go language. It assumes no prior knowledge. Each chapter contains test questions with detailed answers. The HTML version is free. You can support the author by buying the PDF or Paper version.

Go in Action

Go in Action introduces the Go language, guiding you from inquisitive developer to Go guru. The book begins by introducing the unique features and concepts of Go. (We assume you're up to speed with another programming language already, so don't expect to spend a lot of time rehearsing stuff you already know.) Then, you'll get hands-on experience writing real-world applications including web sites and network servers, as well as techniques to manipulate and convert data at speeds that will make your friends jealous. In the final chapters, you'll go in-depth with the language and see the tricks and secrets that the Go masters are using to make their applications perform. For example, you'll learn to use Go's powerful reflection libraries and work with real-world examples of integration with C code.

Go Programming Blueprints - 2nd Ed.

This book shows you how to build powerful systems and drops you into real-world situations. Scale, performance, and high availability lie at the heart of our projects, and the lessons learned throughout this book will arm you with everything you need to build world-class solutions.

Programming in Go: Creating Applications for the 21st Century

Programming in Go brings together all the knowledge you need to evaluate Go, think in Go, and write high-performance software with Go. Summerfield presents multiple idiom comparisons showing exactly how Go improves upon older languages, calling special attention to Go’s key innovations. Along the way, he explains everything from the absolute basics through Go’s lock-free channel-based concurrency and its flexible and unusual duck-typing type-safe approach to object-orientation.

The Go Programming Language

The Go Programming Language is the authoritative resource for any programmer who wants to learn Go. Alan A. A. Donovan and Brian W. Kernighan show you how to write clear and idiomatic Go to solve real-world problems. The book does not assume prior knowledge of Go nor experience with any specific language, so you'll find it accessible whether you're most comfortable with JavaScript, Ruby, Python, Java, or C++.

The book features hundreds of interesting and practical examples of idiomatic Go code that cover the whole language, its most important libraries, and a wide range of applications. Source code is freely available for download from the book's companion web site gopl.io, and may be conveniently fetched, built, and installed using the go get command.

Introducing Go: Build Reliable, Scalable Programs

Perfect for beginners familiar with programming basics, this hands-on guide provides an easy introduction to Go, the general-purpose programming language from Google. Author Caleb Doxsey covers the language's core features with step-by-step instructions and exercises in each chapter to help you practice what you learn.

Go Recipes

Solve your Go problems using a problem-solution approach. Each recipe is a self-contained answer to a practical programming problem in Go. Go Recipes contains recipes that deal with the fundamentals of Go, allowing you to build simple, reliable, and efficient software. Other topics include working with data using modern NoSQL databases such as MongoDB and RethinkDB. The book provides in-depth guidance for building highly scalable backend APIs in Go for your mobile client applications and web client applications.

API Foundations in Go

With this book you'll learn to use Go, taking advantage of it's multi-threaded nature, and typed syntax. Starting your API implementation in Go is your first step towards what a rock solid API should be.

Building Distributed Applications in Gin

Gin is a high-performance HTTP web framework used to build web applications and microservices in Go. This book is designed to teach you the ins and outs of the Gin framework with the help of practical examples.

You’ll start by exploring the basics of the Gin framework, before progressing to build a real-world RESTful API. Along the way, you’ll learn how to write custom middleware and understand the routing mechanism, as well as how to bind user data and validate incoming HTTP requests. The book also demonstrates how to store and retrieve data at scale with a NoSQL database such as MongoDB, and how to implement a caching layer with Redis. Next, you’ll understand how to secure and test your API endpoints with authentication protocols such as OAuth 2 and JWT. Later chapters will guide you through rendering HTML templates on the server-side and building a frontend application wi

Extension points exported contracts — how you extend this code

browse all types & interfaces →

Core symbols most depended-on inside this repo

browse all functions →

Shape

Function 3,517
Method 1,556
Struct 599
Interface 103
TypeAlias 98
FuncType 14
Class 1

Languages

Go97%
TypeScript3%
C1%

Modules by API surface

GolangBooks/blackhatGo/ch-4/credential_harvester/public/index_files/jquery.min.js64 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/trees/btree/btree_test.go55 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/trees/btree/btree.go54 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/lists/doublylinkedlist/doublylinkedlist_test.go47 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/lists/arraylist/arraylist_test.go46 symbols
GolangBooks/blackhatGo/ch-4/credential_harvester/public/index_files/ui.js45 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/trees/redblacktree/redblacktree.go43 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/maps/treemap/treemap_test.go43 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/lists/singlylinkedlist/singlylinkedlist_test.go42 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/sets/treeset/treeset_test.go41 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/sets/linkedhashset/linkedhashset_test.go40 symbols
GolangDataStructuresAndAlgorithms/Golang Data Structures/maps/treebidimap/treebidimap_test.go39 symbols

Datastores touched

pathDatabase · 1 repos

For agents

$ claude mcp add Go-Learning-Archive \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page