新書推薦:
《
大模型启示录
》
售價:NT$
510.0
《
东法西渐:19世纪前西方对中国法的记述与评价
》
售價:NT$
918.0
《
养育男孩:官方升级版
》
售價:NT$
230.0
《
小原流花道技法教程
》
售價:NT$
500.0
《
少女映像室 唯美人像摄影从入门到实战
》
售價:NT$
505.0
《
詹姆斯·伍德系列:不负责任的自我:论笑与小说(“美国图书评论奖”入围作品 当代重要文学批评家詹姆斯·伍德对“文学中的笑与喜剧”的精湛研究)
》
售價:NT$
398.0
《
武当内家散手
》
售價:NT$
230.0
《
诛吕:“诸吕之乱”的真相与吕太后时期的权力结构
》
售價:NT$
454.0
|
編輯推薦: |
通过本书的学习,读者可以全面掌握Go语言核心的基础语法,能为进一步的Go语言应用项目开发打下坚实的基础。
|
內容簡介: |
本书主要讲述Go语言的基础语法,从基本的标识符、数据类型、操作符等开始,主要内容包括Go语言程序的主要设计元素,程序流程控制,数组、切片与映射,函数与错误处理,字符串与指针,结构体与方法,接口与反射,输入输出与文件处理,并发编程基础等。 本书通过大量的程序实例来演示Go语言的语法细节,每个知识点对应的所有细节都做了详述,并辅以大量的编程实践案例揭示其实际应用。 通过本书的学习,读者可以全面掌握Go语言核心的基础语法,能为Go语言应用项目开发打下坚实的基础。 本书既可以作为零基础读者的程序设计入门自学用书,也可以供有一定语言基础,有志于利用Go语言作为工具,开发云计算、区块链等项目的软件开发人员参考。 本书每章附有针对性的上机训练项目及大量的练习题,特别适用于高等院校相关专业作为编程基础类教材。
|
關於作者: |
肖建良,男,1964年生,大连理工大学城市学院网络工程专业教研室主任,副教授。从事高等教育20多年,企业技术管理工作10年。有丰富的一线教学经验及企业技术管理工作经验,深知社会对技术人员的需求,以及教学一线人员对优秀教材的渴求。本人曾主编过实践类教材《网络技术实验教材》 清华大学出版社 2009.10 出版;《网络技术综合实训教程》 大连理工大学出版社 2011.10出版。
|
內容試閱:
|
计算机技术的发展日新月异,尤其是硬件技术不断更新换代,运行速度越来越快,存储容量越来越大,处理性能越来越高。软件技术更是飞速发展,云计算、大数据、人工智能、区块链等应用层出不穷。作为各种应用软件开发的基础——开发工具,也在不断地更新换代,不断地完善。软件开发业界也期望软件开发工具能越来越轻量,越来越易于上手好用,越来越易于提高编程效率,Go语言就是在这样的背景下诞生的。
2018年5月20日,工业和信息化部信息中心发布《2018 中国区块链产业白皮书》,深入分析了我国区块链技术在金融领域和实体经济的应用落地情况,系统阐述了中国区块链产业发展的六大特点和六大趋势,充分揭示了区块链技术的应用前景。区块链技术日渐落地,在金融领域的应用也日渐成熟,其各行各业对区块链技术的应用也在深入研究。在国外,主要的区块链项目均由Go语言开发。因此,Go语言被认为是区块链技术的主要开发工具之一。随着国内各行各业在数字化、信息化方面的高速发展,可以预料,Go语言与区块链技术将成为“数字中国”建设的重要支撑。
Go语言从2012年发布版G1至今,也就是短短的几年时间,与拥有四十多年“高龄”的C语言相比,确实是太年轻了。可是,年轻就是本钱,Go语言有的后发优势。它汲取了各种开发语言的优点,摈弃了那些多为人诟病、烦琐、易于出现歧义的语法,并补充了的编程理念,将面向过程编程与面向对象编程的优点结合于一体。可以说,后发语言就是早期语言优点的集大成者。
从TIOBE于2018年10月发布的编程语言热度排行榜来看,尽管Java和C仍然是王者风范,但Go语言表现也极其出色,从2017年10月排名20进位到2018年10月的12位,如图01所示,眼看突破前10有望了。而且,TIOBE也认为,按照此前的趋势来看,编程语言的TOP10很有可能在Swift、Go和R之中产生。
图01编程语言排行榜
Go语言的官方曾自称,之所以开发Go语言,是因为“近10年来开发程序之难让我们有点沮丧”,并且认为已经有十多年没有出现新的系统语言了,而计算机的环境却发生了巨大的变化。因此,Go语言的开发,几乎要集其他开发语言优点之大成,以期成为一种更新的、更易于使用及流行的通用开发语言。
Go语言号称是互联网时代的C语言,根本原因是来自于其语言级别的对并发的原生支持以及其独有的非常轻量级的goroutine。普通的一台桌面计算机,运行几百个线程就已深感吃力,可是,Go语言程序却可以运行成千上万个goroutine,仍显轻松自如。可见,Go语言对并发的支持有多强大。对于云计算、大数据、人工智能、区块链等这些后台服务器每时每刻都要面对海量的访问请求服务来说,如果并发处理能力不足,就根本应付不过来,势必造成用户的漫长等待,甚至引起服务请求超时退出。因此,后台服务器并发处理性能是重要、为优先考虑的因素。而Go语言的天生优势恰恰就是并发处理能力,可以说双方一拍即合,是天然盟友。可见,Go语言适合于高并发的服务器后台程序开发。
Go语言在设计之初,就糅合了静态编译型语言的高效和安全,以及动态解释型语言的易编程特点,又充分考虑了当代计算机网络以及多核多CPU的硬件系统,非常强调速度及效率,原生支持并发及垃圾自动回收。
编程语言的学习没有任何捷径,只有经过不断的编程实践,上机调试,在错误中不断地摸爬滚打,熬过多少个不眠之夜后,才能成为一个编程高手。
因此,本书不但在正文内容里提供了非常丰富厚实的实践案例,而且在每章习题里还提供了大量短小精练的小程序,供读者分析学习。每章理论内容学习结束后还提供了几个针对性的上机训练项目,有助于对所学理论内容的进一步理解与掌握。
本书分为10章,主要内容简述如下:
第1章认识Go语言: 从一个小程序入手,认识Go语言是什么样子的,接着介绍了Go语言的风格及输入输出格式,Go语言及编辑开发工具的安装等。
第2章Go语言设计元素: 包括Go语言的关键字、标识符、数据类型、常量、变量、操作符、表达式等。
第3章程序流程控制: 主要介绍Go语言的分支、循环、选择、跳转等流程控制语句。
第4章数组、切片与映射: 主要介绍自定义类型数组、切片及映射的概念、操作及应用等。
第5章函数与错误处理: 主要介绍函数的定义,参数的传递,匿名函数与闭包,init函数与main函数,错误与恢复机制,递归函数及内置函数等。
第6章字符串与指针: 主要介绍字符串的定义、操作,标准库strings包及strconv包的使用,指针的概念及使用等。
第7章结构体与方法: 主要介绍自定义结构体类型的概念、定义、操作、嵌套,匿名结构体,复合结构体,以及结构体方法的定义、继承及重写等。
第8章接口与反射: 主要介绍接口的定义、实现、赋值、查询以及接口的多态性,空接口及error接口介绍,反射的概念、类型、操作等。
第9章输入输出与文件处理: 主要介绍输入输出基本概念,标准库中有关输入输出的函数及使用,对文件的各种操作处理等。
第10章并发编程基础: 主要介绍并发的概念,Go语言支持并发的基本原理,goroutine及channel的概念、使用,select的使用,以及锁与同步等。
本书配有同步辅导教材《Go语言程序设计习题解答及上机指导》,供读者参考使用。为便于教学,还为全书所有章节制作了PPT,免费下载,供教学参考。
本书理论及实践内容丰富,建议安排76学时用于教学,其中理论教学40学时,上机操作36学时。
在本书的编写过程中,得到了赵文丽高工的大力支持与帮助,她不但认真细致地审阅了书稿,还提出了很多宝贵意见; 清华大学出版社贾斌老师在本书的出版过程中,做了大量的编辑校对工作。在此,对他们的辛勤付出一并表示衷心感谢!
由于作者水平有限,书中不足或错误之处在所难免,欢迎广大读者批评指正。
编者
2022年2月
|
|