Go并发编程实战.pdfVIP

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
2 第 1 章 初识 Go 语言 第 1 章 初识Go语言 在真正地讲解Go语言之前,先让我们对它有个宏观的认识。本章将介绍Go语言是什么、有 哪些特性、有哪些优势和不足,以及应该怎样学习它。现在就让我们开始吧。 1.1 Go 语言特性一瞥 我们先来看看Go语言的主要特性。  开放源代码的通用计算机编程语言。开放源代码的软件(以下简称开源软件)更容易被 修正和改进。因为,几乎所有的互联网用户都可以看到这些源代码,并可以提供自己的 意见和建议,甚至还可以参与到实际的开发工作中去。与一些不公开源代码的软件(也 可称为闭源软件)相比,开源软件的开发迭代周期要短很多,并且迭代速度要快很多。 这正印证了“众人拾柴火焰高”这句俗语。 虽为静态类型、编译型的语言,但Go语言的语法却趋于脚本化,非常简洁。这方面的内 容,我们会在第3章集中论述。我们可以直接使用各种字面量来表示各种数据类型以及它 们的值,并且还可以使用非常简约的方式操作它们。 卓越的跨平台支持,无需移植代码。这里的跨平台主要是指跨计算架构和操作系统。Go 语言目前已经支持绝大部分主流的计算架构和操作系统了,并且这个范围还在不断地扩 大。我们只要下载与之对应的Go语言安装包,并且经过基本一致的安装和配置步骤,就 可以使Go语言就绪了。除此之外,在编写Go语言程序的过程中,我们几乎感觉不到不同 平台的差异。 全自动的垃圾回收机制,无需开发者干预。Go语言程序在运行过程中的垃圾回收工作由 Go语言运行时系统负责。不过,Go语言也允许我们进行人工干预。在第三部分,我们会 适时地介绍这方面的内容。 原生的先进并发编程模型和机制。Go语言拥有自己独特的并发编程模型,其组成部分有 Goroutine (也可称为Go程)和Channel (也可称为通道)等。实际上,这部分内容也是本 书最重要的主题。在第三部分,我们会一起领略它们的风采。 拥有函数式编程范式的特性,函数为一等代码块。Go语言支持多种编程风格,包括面向 对象编程和函数式编程。而对函数式编程的最有力的支撑就是Go语言将函数类型视为了 1.2 Go 语言的优劣 3 第一等类型。我们会在第3章中说明这一点。 1 无继承层次的轻量级面向对象编程范式。Go语言中的接口与实现之间完全是非侵入式的。 这种接口实现方式总是被人们津津乐道。不但如此,在Go语言中只有类型嵌入而没有类 型继承。这规避了很多与继承有关的复杂问题,也使类型层次更加简单化了。这部分内 容同样会在第3章中展示。 2  内含完善、全面的软件工程工具。Go语言自带的命令和工具相当地强大。通过它们,我 们可以很轻松地完成Go语言程序的获取、编译、测试、安装、运行、运行分析等一系列 工作。可以看到,这几乎涉及了开发和维护一个软件的所有环节。这可以算是一站式的 编程体验了。在本章,我们会简要地浏览一下这些工具。 代码风格强制统一。Go语言的安装包中有自己的代码格式化工具。我们可以利用它来统 3 一程序的编码风格。 程序编译和运行速度都非常快。由于Go语言的简洁语法,我们可以快速地编写出相应的 程序。加之Go语言强大的运行时系统和先进的并发编程模型,Go语言程序可以充分地利 用计算环境并运行飞快。在这本书的内容中,我们会通过对Go语言的各个方面的深入介 4 绍使你真正地了解到Go语言如此优秀的原因。 标准库丰富,极适合开发服务端程序和Web程序。Go语言是通用的编程语言,但是它也 有尤为擅长的几个方面,例如系统级程序和Web程序等,这主要得益于它丰富的标准库。 我们会在本书中介绍很多Go语

文档评论(0)

masterchief216 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5114101340000003

1亿VIP精品文档

相关文档