# GoHello **Repository Path**: luozp/GoHello ## Basic Information - **Project Name**: GoHello - **Description**: 这是玩Go的过程,一起吧 - **Primary Language**: Go - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-12-26 - **Last Updated**: 2026-08-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GoHello > 我用了大半年整理的 Go 学习仓库:~5800 行系统化教程("老兵口吻"+ 章首钩子 + 个人立场段)+ Hot 100 算法刷题 + 可跑通的 go-zero 微服务示例。 > 三块互相引用,学完原理能立刻落到代码上。 ## 写在前面 做这个仓库最初是因为:市面上的 Go 面试资料要么太零散(八股问答一条条散在各处),要么太重(一本几百页的实体书),很难"在通勤路上反复看、查的时候秒定位"。我想要的是一份**有体系、能跳读、原理和代码对得上**的东西。 我是 Roy,17 年后端,目前是架构师,平时主要和高并发、云基础设施打交道,带过几个从 0 到 1 的高难度项目。Go 是我重点深入的主力语言——这份仓库就是我系统化整理、保持技术手感的过程,从基础语法一路铺到 Elasticsearch,中间也开了一份 AI Agent 的教程。如果你在准备 Go 高级工程师面试,或者想看一个老兵怎么把一门语言系统化沉淀下来,希望能给你一点参考。 于是就有了你看到的三块: - **`knowledge/`** — 系统化教程,从 Go 基础语法一路到 Elasticsearch,中间穿插 go-zero、Redis、消息中间件 - **`algorithms/`** — LeetCode 刷题记录,Go 实现 + 表驱动测试 + 错题二刷机制 - **`demos/`** — 跑得起来的微服务示例(目前是 go-zero),把教程里的特性落地 如果你是来面试的,可以重点看 `knowledge/` + `algorithms/`;如果想动手,从 `demos/go-zero-demo/` 跑起来最快。 > 早期零散的示例代码(udp、常用库等)已清理,本仓库按 [ROADMAP](ROADMAP.md) 长期演进。 ## 目录结构 ``` GoHello/ ├── knowledge/ # 知识库(纯文档) │ ├── Go高级工程师面试知识点.md # Go 教程:基础语法→并发→GC→GPM→标准库→网络→算法→Redis→中间件→ES │ ├── AGENT/ # AI Agent 教程:LLM→核心组件→架构→MCP/A2A→框架→工程实践 │ ├── FLUTTER/ # Flutter 跨端教程:Dart→架构三棵树→Widget→布局→状态→平台通道→性能→工程化 │ ├── system-design/ # 系统设计专题(限流/秒杀/缓存体系…) │ ├── cloud-native/ # 云原生(Docker/K8s/可观测性) │ └── flashcards/ # 八股速记卡(Q&A 卡片式) ├── algorithms/ # 算法刷题(独立 module,题解 + 测试) └── demos/ # 代码示例集合(每个示例独立 module) └── go-zero-demo/ # go-zero 微服务实战 ``` ## knowledge/ — 知识库 以通过面试为目标的系统化教程,**全程以"老兵口吻"重写**——每章有钩子、关键小节有"面试要会说原因"、表格带"我的使用建议"列、个人立场段("我踩过的坑" / "我的偏好" / "我的准则")贯穿全文。 **结构(≈6000 行):** 序言 → 怎么读这份文档 → 第 1~10 章(基础语法 → 并发 → 内存与GC → GPM → 标准库 → 网络与微服务 → 数据结构与算法 → Redis → 中间件 → Elasticsearch)→ 附录 A 常见面试题精选(16 道 P6+ 高频题)→ 附录 B 核心命令速查 - **[Go 高级工程师面试知识点](knowledge/Go高级工程师面试知识点.md)**(≈6000 行):基础语法、并发、GC、GPM 调度、标准库(含 go-zero、Wails/Fyne 桌面开发)、网络、算法、精选面试题、Redis、中间件(MySQL / RocketMQ / Kafka / RabbitMQ / PostgreSQL)、Elasticsearch;前 4 章是 runtime 与语言基础(强烈建议先读),后 6 章按需跳读 - **[AI Agent 知识点整理](knowledge/AGENT/AI-Agent-知识点整理.md)**(≈1770 行):LLM 地基、Agent 核心组件、架构、MCP/A2A、Coding Agent、主流框架、工程实践、面试高频问题 - **[Flutter 知识点整理](knowledge/FLUTTER/Flutter-知识点整理.md)**(≈820 行):Dart 地基、架构分层与三棵树、Widget 体系、布局约束、状态管理、网络与数据、平台互操作、性能优化、工程化、面试高频问题 ## algorithms/ — 算法刷题 LeetCode 等题解的 Go 实现与刷题记录,按主题分包(双指针/链表/树/DP…),每题配表驱动测试。详见 [algorithms/README.md](algorithms/README.md)。 ## demos/ — 代码示例 - **[go-zero-demo](demos/go-zero-demo/)**:渐进式微服务实战,演示 JWT 鉴权、分布式锁、布隆过滤器、多级缓存、限流、MapReduce 并发、异步队列、定时任务、A/B 测试、重试降级、WebSocket、Prometheus 监控等 ```bash cd demos/go-zero-demo make docker-up # 启动 MySQL(3308) + Redis(6380) make run-user # 先启动 gRPC 用户服务 make run-gateway # 再启动 HTTP 网关 ``` 详见 [demos/README.md](demos/README.md)。 ## 规划 路线图与进度见 [ROADMAP.md](ROADMAP.md):M1 结构落地 → M2 算法体系 → M3 专题扩充(系统设计/速记卡/云原生)→ M4 示例扩充。