这门课解决什么问题
对于已经熟悉至少一门后端语言、想快速摸清 Go 语法骨架的程序员来说,这门课解决的是“怎么用最短时间把已有编程经验迁移到 Go”的问题。它不绕弯子讲语言发展史,而是直接对着代码讲类型、函数、指针、结构体、接口这些写 Go 程序绕不开的核心概念,配合简单工厂等基本套路,帮你把从零写第一个 Go 文件到能看懂别人项目结构之间的那段路铺平。如果你正准备转技术栈做云原生或后端服务开发,需要快速判断 Go 这门语言自己能不能上手,这套速学资料是个成本很低的试金石。
适合什么基础,建议先看哪几块
这套资料不适合完全没写过代码的纯新手。它的讲解节奏是按“老司机”设定的,默认你已经知道什么是函数返回值、为什么要用接口、面向对象里的继承大概在解决什么问题。如果你写过 Python、Java 或者 C 语言,听起来会非常顺畅;如果只写过前端 JavaScript,可能在指针和参数传递那几节需要停下来自己敲代码验证。建议先把环境搭建和语法套路这几节过一遍,确认本地能跑通程序;接着直接看结构体那几节,因为 Go 用结构体替代了传统面向对象的类,这是语法迁移中最容易卡壳的地方;最后看接口实现和简单工厂模式的部分,这部分决定了你能不能理解 Go 项目里常见的代码组织方式。资料本身是几年前录制的,部分环境配置细节和当前版本会有出入,遇到对不上的地方不用纠结,按当前官方文档调整即可,核心语法这些年变动不大。
学完能独立做什么,资料怎么配合练习
学完这套基础篇,你能独立写出一个能跑的 Go 命令行小程序,比如定义几个结构体表示业务数据,把它们序列化成 JSON 字符串,再用接口把不同类型的管理逻辑归拢到一起。再往后看懂别人写的 Go Web 路由或者中间件代码,基本没有语法障碍。资料配合练习的方式很直接:每一讲都对着视频把代码原样敲一遍,不要复制粘贴。特别是指针和函数参数传递那几节,只有自己改几个参数、打印几次内存地址,才能真正理解 Go 里值传递的机制。结构体和接口那几节,建议在原代码基础上自己加一个新类型去实现已有接口,跑通一次简单工厂的扩展,就算把基础套路吃透了。这门课只是 Go 系列的开头,学完它你还需要补并发、错误处理和标准库网络部分,才能算真正具备写生产环境 Go 服务的条件。
(本课程是几年前录制,部分细节和现在不同,请加群提问)GO课程是未来要更新的系列主题课程。本篇是基础入门篇,其目的就是快速入手GO的基础语法和基本开发套路。本课
课程目录
* 第一章:go语法和基础套路实例速过 cplist.push('第一章:go语法和基础套路实例速过');/
* 第1讲:开张课、最简环境搭建、goland使用
* 第2讲:语法套路:类型、定义函数、返回值
* 第3讲:包引用、"实体类"的使用套路(struct)
* 第4讲:指针疯狂速学:入手指针类型
* 第5讲:函数以及函数的参数传递
* 第6讲:结构体入门:设计一个实体类、初始化的几种方式
* 第7讲:结构体入门(2):使用第三方包、JSON化结构体、if/else等
* 第8讲:结构体入门(3):继承、数组初步
* 第9讲:interface入门: 实现接口、简单工厂模式练习
* 第10讲:interface入门(2):包构造函数、自动注册接口(代码技巧)
* 第11讲:集成mysql驱动、调用数据库、查询数据、for循环
* 第12讲:mysql调用(2):入门slice切片、查询返回实体集合
* 第13讲:mysql调用(3): 查询返回通用数组、空接口使用、类型断言、range
* 第14讲:mysql调用(4): 查询返回通用map(字典)、可变参数用法
* 第15讲:go协程入门(1):认识协程、百团大战、启动最简单的协程
* 第16讲:go协程入门(2):协程通信之认识channel、死锁、多协程速度比较
* 第17讲:go协程channel练习:交叉合并数组、遍历channel
* 第18讲:go协程练习:多协程抓取网页、ioutil简单读写、格式化字符串
* 第19讲:go协程练习: 抓取网页出现异常处理、panic、defer入门
* 第20讲:go协程练习: select、超时处理、goto语句
* 第21讲:go协程练习:sync包入门、等待协程执行结束
* 第22讲:go协程练习:互斥锁入门、io、bufio读写文件
* 第23讲:go协程+锁练习:多协程利用互斥锁按顺序、按行读文件
* 第二章:Socket编程基础篇 cplist.push('第二章:Socket编程基础篇');/
* 第24讲:创建最简单的Socket服务端和客户端代码
* 第25讲:"死循环"Socket服务端、支持浏览器输出
* 第26讲:正则入门、分析请求path、Socket服务端开启协程支持
* 第27讲:socket练习(1):实现浏览器静态文件的访问、处理404
* 第28讲:httpserver学习(1):使用http包快速创建server、自定义handler
* 第29讲:httpserver学习(2):路由、设置cookie、注销、判断登录
* 第30讲:httpserver练习:自定义路由、支持GET/POST访问
* 第31讲:httpserver练习(2):创建自己的简易"上下文"对象
* 第32讲:httpserver练习(3): 让我们的"框架"支持控制器雏形
* 第33讲:httpserver练习(4): 支持GET/POST参数、JSON输出和Model映射
* 第34讲:RPC入门(1):创建最简单的rpc服务和调用
* 第35讲:RPC入门(2):JSONRPC使用、使用PHP调用
* 第36讲:RPC入门(4):初步使用Protobuf定义自己的RPC服务数据
* 第37讲:RPC入门(5):初步入手gRPC,创建服务端和客户端
* 第38讲:Context上下文包套路入门(1):在指定时间内生成幸运用户ID
* 第39讲:Context入门(2):在httpserver中实现超时






