全部商品分类

您现在的位置: 全部商品分类 > 电子电脑 > 计算机技术 > 程序与语言

Go语言项目开发上手指南

  • 定价: ¥119
  • ISBN:9787111684565
  • 开 本:16开 平装
  •  
  • 折扣:
  • 出版社:机械工业
  • 页数:450页
  • 作者:编者:谢伟|责编:...
  • 立即节省:
  • 2021-08-01 第1版
  • 2021-08-01 第1次印刷
我要买:
点击放图片

导语

  

内容提要

  

    本书是学习Go语言项目开发的指南。全书共13章,前4章介绍Go语言的特性,接下来的8章针对不同的应用场景介绍如何进行功能的开发,内容包括图表库、单元测试、网络爬虫程序、私有库、RESTful风格的Web开发、面向接口编程等,最后一章介绍Go开发的路线。
    本书推崇以实例的方式来学习编程,给出了相对完整的项目开发过程,并对具体的应用进行了较为详细的说明,以便帮助读者快速上手项目开发工作。
    本书既适合初学者学习,也适合有一定Go语言基础的读者参考。

目录

前言
第1章  概述
  1.1  Go语言的特性
  1.2  开发环境的搭建
    1.2.1  下载与目标操作系统匹配的安装包
    1.2.2  设置环境变量
    1.2.3  集成开发环境的选择
    1.2.4  编写第一个Go程序
  1.3  Go命令行和项目结构
    1.3.1  需要GOPATH支持的方式
    1.3.2  不需要GOPATH支持的方式
  1.4  本章小结
第2章  基础知识
  2.1  引子
  2.2  了解Go语言的基本语法
    2.2.1  变量
    2.2.2  声明与赋值
    2.2.3  多个变量的声明与赋值
    2.2.4  变量的作用域
    2.2.5  常量
    2.2.6  基本数据类型
    2.2.7  类型转换
    2.2.8  自定义类型
    2.2.9  函数
    2.2.10  流程控制
    2.2.11  结构体
    2.2.12  接口
  2.3  本章小结
第3章  数据操作
  3.1  变量
    3.1.1  显式声明与隐式声明
    3.1.2  组织多个变量
    3.1.3  变量的命名应遵循的原则
  3.2  运算
    3.2.1  算术运算
    3.2.2  逻辑运算
  3.3  数组和切片
  3.4  字典
  3.5  结构体
    3.5.1  匿名字段
    3.5.2  小结
  3.6  接口
    3.6.1  error
    3.6.2  Marshaler
  3.7  库(包)管理
    3.7.1  库(包)的导入
    3.7.2  下载库(包)
  3.8  项目组织的结构
    3.8.1  领域驱动的方式
    3.8.2  业务驱动的方式
  3.9  本章小结
第4章  内置库的常用操作
  4.1  字符串
  4.2  bytes
  4.3  json
  4.4  io/bufio
  4.5  fmt
  4.6  strconv
  4.7  time
  4.8  regexp
  4.9  log
  4.10  reflect/unsafe
  4.11  os/path/filepath
  4.12  unicode
  4.13  flag
  4.14  net/url
  4.15  net/http
  4.16  sort
  4.17  error
  4.18  本章小结
第5章  编写图表库
  5.1  常见的开源图表库
    5.1.1  ECharts
    5.1.2  BizCharts
    5.1.3  chart.js
    5.1.4  HighCharts
    5.1.5  小结
  5.2  模板引擎的使用
  5.3  使用模板引擎构建图表
  5.4  基于chart.js构建图表库go-chart
    5.4.1  项目组织结构
    5.4.2  模板文件
    5.4.3  基础数据
    5.4.4  图表类型
  5.5  本章小结
第6章  编写测试
  6.1  单元测试
  6.2  基本的使用
    6.2.1  常见用法
    6.2.2  样本测试
    6.2.3  SetUp/TearDown
  6.3  表格驱动法测试
  6.4  第三方库goconvey
  6.5  解决依赖性问题
    6.5.1  函数依赖关系
    6.5.2  数据库的依赖
  6.6  性能测试
  6.7  本章小结
第7章  网络爬虫
  7.1  网络爬虫是什么
  7.2  网页的基本组成
    7.2.1  HTML
    7.2.2  Chrome开发者工具的使用
    7.2.3  小结
  7.3  原生库解析HTML网页
  7.4  正则表达式解析网页
  7.5  网络爬虫的流程
  7.6  网页源代码的获取
    7.6.1  原生net/http库
    7.6.2  Selenium浏览器自动化测试
    7.6.3  Chromedp渲染
    7.6.4  小结
  7.7  CSS选择器解析网页
    7.7.1  语法
    7.7.2  下载安装
    7.7.3  示例
    7.7.4  小结
  7.8  XPath路径表达式解析网页
    7.8.1  语法
    7.8.2  下载安装
    7.8.3  示例
    7.8.4  小结
  7.9  JSON数据解析
    7.9.1  JSON数据
    7.9.2  下载安装
    7.9.3  v2ex社区实例
    7.9.4  猫眼票房实例
  7.10  App端数据的获取
    7.10.1  Charles的使用
    7.10.2  Mitmproxy的使用
    7.10.3  小结
  7.11  数据存储
    7.11.1  百度搜索指数实例
    7.11.2  持久化存储
    7.11.3  数据库的形式
  7.12  本章小结
第8章  实现命令行工具
  8.1  优秀的命令行工具的特点
    8.1.1  Docker
    8.1.2  Go
  8.2  命令行工具需要处理的内容
  8.3  Go实现命令行的几种方式
    8.3.1  内置的os库
    8.3.2  内置的flag库
    8.3.3  使用第三方库cobra实现gitcli
  8.4  本章小结
第9章  动手实现一个库
  9.1  解决什么问题
  9.2  解决方案
    9.2.1  手动处理
    9.2.2  参考别人的思路
    9.2.3  自己的思路
    9.2.4  持续集成
    9.2.5  拓展
  9.3  本章小结
第10章  Web服务
  10.1  使用net/http构建简易的Web服务
    10.1.1  启动Web服务
    10.1.2  目标
    10.1.3  模板的使用
    10.1.4  内容开发
  10.2  使用net/http构建爱鲜蜂Web服务
    10.2.1  需求流程梳理
    10.2.2  模型设计
    10.2.3  代码开发
    10.2.4  项目组织结构
  10.3  本章小结
第11章  Web开发手册
  11.1  再谈HTTP
  11.2  设计RESTfulAPI
    11.2.1  资源的访问操作
    11.2.2  路由的设计
    11.2.3  参数
    11.2.4  参数检验
    11.2.5  响应信息
  11.3  数据模型
    11.3.1  GORM方案
    11.3.2  XORM方案
    11.3.3  小结
  11.4  中间件
    11.4.1  Gin中间件
    11.4.2  Echo中间件
    11.4.3  Iris中间件
    11.4.4  小结
  11.5  响应信息
    11.5.1  正确时的响应信息
    11.5.2  错误时的响应信息
    11.5.3  小结
  11.6  项目组织结构
  11.7  代码管理和托管
  11.8  Make构建工具
    11.8.1  语法规范
    11.8.2  Go项目的命令
  11.9  容器化部署
    11.9.1  Docker容器的使用
    11.9.2  小结
  11.10  自动CI/CD
  11.11  本章小结
第12章  面向接口编程
  12.1  开源
  12.2  搜索引擎的基本使用
    12.2.1  下载并安装
    12.2.2  docker-compose配置文件
    12.2.3  查看安装是否成功
  12.3  客户端go-elasticsearch的使用
    12.3.1  下载并安装
    12.3.2  基本的使用
  12.4  项目组织的形式
  12.5  面向接口编程
  12.6  自己实现,学为己用
  12.7  本章小结
第13章  Go学习路径
  13.1  内置库
    13.1.1  访问官方文档
    13.1.2  文档的组织
    13.1.3  阅读内置库
  13.2  版本管理
    13.2.1  初始化
    13.2.2  下载
    13.2.3  移除不需要的模块
  13.3  测试驱动开发
  13.4  命令行
  13.5  Web开发
  13.6  SQL与ORM
  13.7  系统工程
    13.7.1  需求讨论
    13.7.2  迭代开发/测试
    13.7.3  代码版本管理
    13.7.4  持续集成(CI)
    13.7.5  持续部署(CD)
    13.7.6  多组件部署
    13.7.7  监控运维