欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • Go语言从入门到进阶实战(视频教学版)
      • 作者:编者:徐波
      • 出版社:机械工业
      • ISBN:9787111598244
      • 出版日期:2018/06/01
      • 页数:398
    • 售价:39.6
  • 内容大纲

        徐波编著的《Go语言从入门到进阶实战(视频教学版)》采用“理论+实例”的编写形式,通过大量的实例,并结合作者多年的一线开发实战经验,全面介绍了Go语言的语法及使用方法。全书秉承方便学习、易于理解、便于查询的理念编写而成,无论是想系统学习Go语言基础知识的初学者,还是想进阶提高的有经验开发人员,都能通过本书迅速掌握Go语言的各种基础语法和开发技巧。本书作者曾经与慕课网合作录制过相关视频课程,有丰富的视频制作经验,所以特意为本书重点内容精心录制了配套教学视频,这将极大地提升读者的学习效率,取得比同类图书更好的学习效果。另外,本书还免费提供了书中涉及的实例源代码,以方便读者学习。
        本书分为13章,主要介绍了Go语言的特性与环境搭建、基本语法与使用、容器(存储和组织数据的方式)、流程控制、函数、结构体、接口、包、并发、反射、编译与工具、Go程序开发技巧;最后的实战演练部分剖析了作者的开源网络库cellnet的架构及设计思想,并且实现了Socket聊天功能。本书对于Go语言的并发特色功能有全面、深入的讲解,需要读者重点学习。
        本书结构清晰,内容通俗易懂,案例丰富,实用性强,特别适合Go语言初学者和进阶读者阅读。另外,本书也适合作为相关培训l学校和各大院校的教材或教学参考书。
  • 作者介绍

        徐波,资深全栈游戏开发者,慕课网特邀讲师,开源爱好者,Gopher之一。游戏行业从业十余年。曾就职于著名的网络游戏公司Possibility Space,与暴雪星际争霸程序Gage Galinge和美术界知名原画师朱峰(变形金刚电影版红蜘蛛设计者)一起开发了大型3D暗黑系魔幻网游Warrior Epic。业界最早实现了微端Download On Demand技术。2009年开设战魂小筑博客。2012年开始使用Go语言,并在GitHub上发布了cellnet网络库及tabtoy导表工具,深受业界赞誉。作为慕课网特邀讲师,制作了多个技术视频,讲授Go语言、Cocos和Unity等课程,广受学员好评。
  • 目录

    配套学习资源
    前言
    第1章  初识Go语言
      1.1 Go语言特性
      1.2 使用Go语言的项目
      1.3 怎样安装Go语言开发包
        1.3.1 Windows版安装
        1.3.2 Linux版安装
      1.4 搭建开发环境
        1.4.1 集成开发环境——Jetbrains GoLand
        1.4.2 方便定义功能的编辑器——Visual Studio Code
    第2章  Go语言基本语法与使用
      2.1 变量
        2.1.1 声明变量
        2.1.2 初始化变量
        2.1.3 多个变量同时赋值
        2.1.4 匿名变量——没有名字的变量
      2.2 数据类型
        2.2.1 整型
        2.2.2 浮点型
        2.2.3 示例:输出正弦函数(Sin)图像
        2.2.4 布尔型
        2.2.5 字符串
        2.2.6 字符
        2.2.7 切片——能动态分配的空间
      2.3 转换不同的数据类型
      2.4 指针
        2.4.1 认识指针地址和指针类型
        2.4.2 从指针获取指针指向的值
        2.4.3 使用指针修改值
        2.4.4 示例:使用指针变量获取命令行的输入信息
        2.4.5 创建指针的另一种方法——new()函数
      2.5 变量生命期——变量能够使用的代码范围
        2.5.1 什么是栈
        2.5.2 什么是堆
        2.5.3 变量逃逸(Escape Analysis)——自动决定变量分配方式,提高运行效率
      2.6 字符串应用
        2.6.1 计算字符串长度
        2.6.2 遍历字符串——获取每一个字符串元素
        2.6.3 获取字符串的某一段字符
        2.6.4 修改字符串
        2.6.5 连接字符串
        2.6.6 格式化
        2.6.7 示例:Base64编码——电子邮件的基础编码格式
        2.6.8 示例:从INI配置文件中查询需要的值
      2.7 常量——恒定不变的值
        2.7.1 枚举——一组常量值
        2.7.2 将枚举值转换为字符串
      2.8 类型别名(Type Alias)
        2.8.1 区分类型别名与类型定义

        2.8.2 非本地类型不能定义方法
        2.8.3 在结构体成员嵌入时使用别名
    第3章  容器:存储和组织数据的方式
      3.1 数组——固定大小的连续空间
        3.1.1 声明数组
        3.1.2 初始化数组
        3.1.3 遍历数组——访问每一个数组元素
      3.2 切片(slice)——动态分配大小的连续空间
        3.2.1 从数组或切片生成新的切片
        3.2.2 声明切片
        3.2.3 使用make()函数构造切片
        3.2.4 使用append()函数为切片添加元素
        3.2.5 复制切片元素到另一个切片
        3.2.6 从切片中删除元素
      3.3 映射(map)——建立事物关联的容器
        3.3.1 添加关联到map并访问关联和数据
        3.3.2 遍历map的“键值对”——访问每一个map中的关联关系
        3.3.3 使用delete()函数从map中删除键值对
        3.3.4 清空map中的所有元素
        3.3.5 能够在并发环境中使用的map——sync.Map
      ……
    第4章  流程控制
    第5章  函数(function)
    第6章  结构体(struct)
    第7章  接口(interface)
    第8章  包(package)
    第9章  并发
    第10章  反射
    第11章  编译与工具
    第12章  “避坑”与技巧
    第13章  实战演练——剖析cellnet网络库设计并实现Socket聊天功能