《Go语言高级开发与实战》是由机械工业出版社出版的一本关于Go语言方面的书籍,作者是廖显东,主要介绍了关于Go语言、Go语言开发、Go语言实战方面的知识内容,目前在Go语言类书籍综合评分为:7.4分。
书籍介绍
编辑推荐
Go语言高级开发与实战聚焦Go语言的高级开发技巧和应用实战。高级进阶、重点解析Go语言高级开发知识;源码再用,随书源码可直接二次开发进行实战部署。作者廖显东,高级软件架构师,全栈开发者,技术极客,Gopher,开源爱好者。对Go、Rust等流行开发语言有深入实践和研究。对大型电子商务系统开发、高并发架构、分布式架构、微服务、大数据、人工智能算法等领域有深入实践和研究。建议采用以线上销售为主、线上线下相结合的营销方式推广。
内容简介
Go语言高级开发与实战聚焦Go语言的高级开发技巧和应用实战。《Go语言高级开发与实战 》共6章,分别为Go语言基础实战、Go语言高级编程技巧、Go Web编程、Go语言并发编程、分布式系统、Go语言秒杀系统实战。Go语言高级开发与实战简洁而不失技术深度,内容丰富全面,以极简的文字介绍了复杂的案例,是学习Go语言高级开发的实用教程。
Go语言高级开发与实战适合Go语言初学者、Go语言中高级开发人员、Web开发工程师阅读,还可作为大中专院校相关专业和培训学校师生的学习用书。
目录
- 前言
- Go语言基础实战/
- 1.1Go语言基础/
- 1.1.1基础语法/
- 1.1.2变量/
- 1.1.3常量/
- 1.1.4运算符/
- 1.1.5流程控制语句/
- 1.2字符串实战技巧/
- 1.2.1字符串基础/
- 1.2.2中文字符串的截取/
- 1.2.3按单词或字节反转字
- 符串/
- 1.2.4生成随机字符串/
- 1.2.5控制大小写/
- 1.2.6去除字符串首尾的空格/
- 1.2.7生成CSV数据/
- 1.2.8解析CSV数据/
- 1.2.9获取中文字符串/
- 1.2.10按指定函数分割字符串/
- 1.2.11合并与分割字符串/
- 1.2.12按照指定函数截取字
- 符串/
- 1.2.13【实战】生成可下载的CSV
- 文件/
- 1.2.14【实战】用Go运行Shell脚本
- 程序/
- 1.3数组和切片基础技巧/
- 1.3.1数组和切片基础/
- 1.3.2迭代处理数组/
- 1.3.3从数组中删除元素/
- 1.3.4将数组转换为字符串/
- 1.3.5检查某个值是否在数
- 组中/
- 1.3.6查找一个元素在数组中的
- 位置/
- 1.3.7查找数组中值或小值
- 元素/
- 1.3.8随机打乱数组/
- 1.3.9删除数组中重复的元素/
- 1.4数组高级技巧/
- 1.4.1一维数组的排序/
- 1.4.2二维数组的排序/
- 1.4.3多维数组声明/
- 1.4.4多维数组遍历/
- 1.4.5多维数组的查询/
- 1.4.6多维数组的修改/
- 1.4.7三维数组生成器/
- 1.4.8【实战】从数据库中获取数据并
- 进行合并处理和导出/
- 1.5map常见实战技巧/
- 1.5.1map基础/
- 1.5.2检查一个键是否在
- map中/
- 1.5.3json与map互相转化/
- 1.5.4map排序示例/
- 1.5.5map高级使用技巧/
- 1.5.6map排序技巧/
- 1.5.7【实战】从数据库中获取数据
- 并导出特定CSV文件/
- 1.6结构体的使用技巧/
- 1.6.1结构体基础/
- 1.6.2结构体初始化/
- 1.6.3继承/
- 1.6.4结构体组合/
- 1.6.5匿名结构体/
- 1.6.6结构体嵌套/
- 1.6.7结构体字段标签/
- 1.6.8Go语言面向对象编程/
- 1.6.9【实战】模拟二维矢量移动
- 小游戏/
- 1.7接口常用技巧/
- 1.7.1接口的赋值/
- 1.7.2接口的查询/
- 1.7.3接口的组合/
- 1.7.4接口的常见应用/
- 1.7.5接口使用注意事项/
- 目录
- Go语言高级开发与实战1.8Go语言模块管理/
- 1.9通道实战技巧/
- 1.9.1通道基础/
- 1.9.2创建定时通知/
- 1.9.3使用通道传送通道/
- 1.9.4检查通道的长度和容量/
- 1.9.5速率限制/
- 1.10回顾和启示/
- Go语言高级编程技巧/
- 2.1函数与指针技巧/
- 2.1.1递归函数/
- 2.1.2匿名变量和匿名函数/
- 2.1.3指针/
- 2.1.4函数的参数传递/
- 2.1.5函数使用的常见
- 注意事项/
- 2.2反射应用技巧/
- 2.2.1反射原理/
- 2.2.2反射3大法则简介/
- 2.3Go语言编译/
- 2.3.1编译基础知识/
- 2.3.2Go语言编译原理/
- 2.3.3Go语言编译器入口/
- 2.3.4编译器调试/
- 2.4CGO编程技巧/
- 2.4.1CGO基础使用/
- 2.4.2CGO使用的问题和挑战/
- 2.5错误和异常处理技巧/
- 2.5.1错误和异常简介/
- 2.5.2错误处理的技巧/
- 2.5.3异常处理的技巧/
- 2.6密码学算法技巧/
- 2.6.1Hash算法/
- 2.6.2对称与非对称加密算法/
- 2.6.3椭圆曲线加密算法/
- 2.6.4字符串编码与解码/
- 2.7性能剖析与事件追踪/
- 2.7.1pprof性能剖析/
- 2.7.2trace事件追踪/
- 2.8回顾和启示/
- Go Web编程/
- 3.1Go Web基础/
- 3.1.1Go语言接收HTTP请求/
- 3.1.2Go语言处理HTTP请求/
- 3.2Go HTTP2编程/
- 3.2.1HTTP简介/
- 3.2.2Go HTTP2编程实例/
- 3.3Go HTTP3编程/
- 3.3.1HTTP3简介/
- 3.3.2Go HTTP3编程实例/
- 3.4Go Socket编程/
- 3.4.1什么是Socket/
- 3.4.2TCP Socket/
- 3.4.3UDP Socket/
- 3.4.4【实战】用Socket开发简易
- 聊天程序/
- 3.5Go MySQL使用技巧/
- 3.5.1Go 使用MySQL/
- 3.5.2MySQL常见ORM/
- 3.6Go Redis使用技巧/
- 3.6.1Go Redis常见处理技巧/
- 3.6.2使用Go Redis实现排行榜
- 功能/
- 3.7Go gRPC使用/
- 3.7.1什么是gRPC/
- 3.7.2Go gRPC的使用/
- 3.8【实战】使用gRPC开发一个简易分
- 布式爬虫系统/
- 3.9回顾和启示/
- Go语言并发编程/
- 4.1并发编程基础/
- 4.2计算机常见并发模型/
- 4.2.1线程和锁/
- 4.2.2演员模型/
- 4.2.3通信顺序进程/
- 4.3Go语言并发模型/
- 4.4Go语言常见并发设计模式/
- 4.4.1屏障模式/
- 4.4.2未来模式/
- 4.4.3管道模式/
- 4.4.4扇出和扇入模式/
- 4.4.5协程池模式/
- 4.4.6发布-订阅模式/
- 4.5同步常用技巧/
- 4.5.1竞态/
- 4.5.2互斥锁/
- 4.5.3读写互斥锁/
- 4.5.4只执行一次/
- 4.5.5等待组/
- 4.5.6竞态检测器/
- 4.5.7并发安全字典/
- 4.6goroutine使用技巧/
- 4.6.1限制并发数量/
- 4.6.2节拍器/
- 4.6.3使用select多路复用/
- 4.7【实战】开发一个并发任务
- 系统/
- 4.8回顾和启示/
- 分布式系统/
- 5.1分布式系统原理/
- 5.1.1什么是分布式系统/
- 5.1.2分布式系统的常见一致性
- 算法/
- 5.2负载均衡简介/
- 5.3常见负载均衡算法/
- 5.3.1轮询调度算法/
- 5.3.2随机算法/
- 5.3.3一致性哈希算法/
- 5.3.4键值范围算法/
- 5.4分布式锁/
- 5.4.1分布式锁简介/
- 5.4.2基于MySQL数据库表实现
- 分布式锁/
- 5.4.3用ZooKeeper实现分布
- 式锁/
- 5.4.4使用Redis的SETNX实现
- 分布式锁/
- 5.4.5使用etcd实现分布式锁/
- 5.4.5分布式锁的选择/
- 5.5Go实现常见的分布式应用/
- 5.5.1用Snowflake框架生成分布
- 式ID/
- 5.5.2Go 语言实现 Paxos一致性
- 算法/
- 5.6Go语言常见分布式框架/
- 5.6.1Go Micro框架/
- 5.6.2Consul框架/
- 5.7回顾和启示/
- Go语言秒杀