《Go语言从入门到精通》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了Go语言的基础、进阶提高和高级应用知识。全书分为4篇,共19章,包括初识Go语言、Go语言基础、Go语言基本数据类型与运算符、流程控制、复合数据类型、函数、指针、结构体、接口、错误处理、并发编程、包管理、标准库、编译与测试工具、反射、MySQL数据库编程、文件处理、网络编程和Go语言在爬虫中的应用等内容。所有知识都结合具体实例进行讲解,涉及的程序代码给出了详细的注释。全书共计98个应用实例,学练结合,读者可以轻松领会Go语言的开发精髓,快速提升开发技能。
本书作者带你一步一步深入这些方法。你将理解 Go语言为何选定这些并发模型,这些模型又会带来什么问题,以及你如何组合利用这些模型中的原语去解决问题。学习那些让你在独立且自信的编写与实现任何规模并发系统时所需要用到的技巧和工具。理解Go语言如何解决并发难以编写正确这一根本问题。学习并发与并行的关键性区别。深入到Go语言的内存同步原语。利用这些模式中的原语编写可维护的并发代码。将模式组合成为一系列的实践,使你能够编写大规模的分布式系统。学习 goroutine 背后的复杂性,以及Go语言的运行时如何将所有东西连接在一起。
《深入浅出Go语言核心编程》是一本全面而深入的Go语言学习手册,涵盖了Go语言的诸多关键特性,包括语法结构、内存原理、并发、上下文机制与框架应用等。本书共20章。第1章引导读者快速搭建开发环境,详细介绍Go语言的环境配置及编译运行的具体细节。第2~5章详细讨论Go语言独特的变量、常量、常用数据类型和流程控制,并重点解析复杂类型的底层实现机制。第6~8章讲解Go语言的函数及如何实现面向对象编程,打通Go语言面向过程和面向对象编程之间的桥梁。第9~12章探讨Go语言的一些高级话题,包括并发、上下文、反射、泛型等。第13~15章探讨Go语言的I/O、网络编程及RPC通信等编程场景。第16~18章是Go语言的扩展话题,涵盖了内存管理、正则表达式和Go语言的汇编。第19章和第20章重点探讨了Go语言在日常开发中的典型应用,主要介绍HTTP框架Gin的使用,以及
学习内容: 如何开发用于你自己安全项目的高性能工具。 如何创建与远程API交互的可用工具。 如何抓取任意HTML数据。 如何使用Go的标准包net/http构建HTTP服务器。 如何编写自己的DNS服务器和代理。 如何使用DNS隧道建立一个C2通道以突破限制性网络。 如何创建漏洞模糊器(fuzzer)以发现应用程序的安全漏洞。 如何使用插件和扩展使产品可以面向未来。 如何构建RC2对称密钥暴力破解工具。 如何在(PNG)图像中植入数据。 准备好扩展你的安全工具库了吗? 那我们出发(Go)吧!
全书分为3篇,第1篇是基础入门篇,包括Go语言入门、Go语言编程基础、算法与数据结构基础、基本数据结构,系统介绍了Go语言基础知识、算法基础、栈、队列、链表等的基本原理,Go语言实现及面试题实战;第2篇是进阶篇,包括树、图两章内容,系统介绍了树与图数据结构的基本原理,Go语言实现及面试题实战;第3篇是高级篇,系统介绍了排序算法、搜索算法、贪心算法、分治算法、回溯算法、动态规划算法、递归算法、常见机器学习算法等的基本原理,Go语言实现及面试题实战。本书还提供了完整的配套代码,同时为重难点知识提供了配套视频,帮助读者以最快的速度从零基础新手向算法高手进阶。
全书分为2篇:1.第1篇详细介绍Go语言高性能优势是如何实现的,包括经典的GMP调度模型,Go语言调度器的实现,垃圾回收,以及如何基于管道、锁等并发编程。2.第二篇主要是项目实战,手把手带领读者从0开始搭建高性能、高稳定的Go服务。以及在面对线上问题时,如何调试、分析、解决。通过学习本书,读者对Go语言的核心 高并发会有一个深刻的认识,具备一定的Go并发编程经验,能够独立完成高性能、高稳定Go服务的架构设计,并且能够基于一些工具进行Go线上问题分析与性能调优。
Go语言"入门易,精通难 。想要用Go语言写出优质的软件,不仅要了解Go语言的语法,还需要对Go语言的特性、软件的通用编写方法、软件项目的组织方法、并发程序设计、软件测试、软件性能优化等方面都有一定的了解。 本书既聚焦于Go语言,又不限于Go语言,介绍了开发者在使用Go语言时经常犯的100个经典错误,内容侧重于语言核心和标准库。对大多数错误的讨论都提供了具体的示例,以说明在什么时候容易犯这样的错误。这不是一本教条主义的图书,每个解决方案都详细传达了它应该适用的上下文。
Go语言正在迅速成为构建Web服务的优选语言。本书很好地阐述了Go语言的特性,同时指出了Go语言的惯例代码、陷阱和设计模式。本书语言生动,表述清晰,将Go语言的基本原理与语言哲学联系在一起,引导读者正确编写Go语言。既介绍基础知识,又涵盖高级主题(如反射和C语言互操作),通过大量例子演示了如何写出符合Go语言惯例的代码,解释了可能影响程序行为的底层概念,比如指针对内存布局和垃圾回收的影响。无论你是Go语言的初学者,还是经验丰富的Go语言从业人员,相信都能从本书中获益良多。
在程序员与计算机的 交流 过程中,解释器无疑扮演着优秀的翻译角色。它为只懂0和1的计算机翻译源代码,为看似随机的字符赋予含义。这是如何实现的呢?充满好奇心的你,是否曾经思考过这个问题?跟随本书,你将揭开解释器的神秘面纱,通晓它的工作原理,并编写出自己的解释器。本书采用Go语言来为自创的编程语言Monkey实现解释器。你将为Monkey语言实现类C语法、变量绑定、基本数据类型、算术运算、内置函数、闭包等特性,并了解什么是词法分析器、语法分析器和抽象语法树。
全书分为3篇。第1篇存储基本原理和分布式基本原理。特别针对 Linux OS 的 IO 知识进行讲解,并且还会结合 Go 的存储编程实现。第二篇剖析现有的存储系统实现,对它们使用的设计,概念,实现进行深入的剖析。以此来借鉴。第三篇进行编程实战,将编写数个极具实践价值的应用程序,并且形成一个完备的分布式存储系统。
本书详细介绍WebRTC音视频开发技术,本书系统介绍WebRTC技术的原理与应用,涵盖:WebRTC技术发展历史、应用场景、整体架构,WebRTC通话原理,Web开发环境搭建,HTML5项目简介,访问设备的设置,音视频设备的设置,音视频的录制,结合React Flutter Go技术开发音视频应用的案例等。 分为三篇,共15章,主要内容包括: 基本概念篇 (第1~2章),介绍WebRTC技术发展历史,分析WebRTC整体架构及其核心API,分析WebRTC通话原理,介绍媒体协商、网络协商等基本概念,介绍NAT、SDP、ICE、STUN以及TURN协议; 基础应用篇 (第3~11章),介绍WebRTC技术的方方面面,如访问设备、音视频设置、媒体流与轨道、媒体录制、连接建立过程以及数据通道等,帮助读者快速掌握WebRTC的常用接口; 综合案例篇 (第12~15章),通过一个一对一的视频通话案例,将前面所学知识串起来,案例的客
本书主要分三个方面介绍Go语言:Go语言精华 并发和小而美的类型系统;Go语言缺陷;Go语言的哲学。本书重点介绍Go语言的实践和并发编程范式,力求让读者不但清楚并发的基本语法和原理,还学会怎么去使用。本书对Go语言规范中的命名类型、非命名类型,底层类型,动态类型等概念进行阐述,让开发者对Go的类型系统有全面的了解;同时,接口是Go类型系统*核心的一个元素,本书中也会花大量的笔墨进行介绍。Go虽然设计得小而美,但语言并不是完美的,有些陷阱和坑需要开发者特别小心,本书会专门介绍Go使用过程中的陷阱,包括: defer陷阱,接口nil,变量短声明引发的困惑,range的临时变量复用,slice底层数组重分配等。Go天然的并发支持能够更好地建模实际问题,本书在*后的部分会介绍Go语言的设计哲学,包括采用组合这种更通用的模式以使得表现力更强;
《Go语言趣学指南》是一本面向Go语言初学者的书,循序渐进地介绍了使用Go语言所必需的知识,展示了非常多生动有趣的例子,并通过提供大量练习来加深读者对书中所述内容的理解。本书共分8个单元,分别介绍变量、常量、分支和循环等基础语句,整数、浮点数和字符串等常用类型,类型、函数和方法,数组、切片和映射,结构和接口,指针、nil和错误处理方法,并发和状态保护,并且每个单元都包含相应的章节和单元测试。 《Go语言趣学指南》适合对初学Go语言有不同需求的程序员阅读。无论是刚开始学习Go语言的新手,还是想要回顾Go语言基础知识的Go语言使用者,只要是想用Go做开发,无论是开发小型脚本还是大型程序,《Go语言趣学指南》都会非常有帮助。
《Go语言编程》首先引领读者快速浏览Go 语言的全貌,迅速消除读者对这门语言的陌生感,然后循序渐进地介绍了Go 语言的面向程和面向对象的编程语法,其中穿插了一些与其他主流语言的比较以让读者理解Go 语言的设计动机,接着探讨了Go 语言重要的并行编程方法,之后介绍了网络编程、工程管理、安全编程、开发工具等非语法相关但非常重要的内容,*后为一列关于Go 语言的文章,可以帮助读者更深入了解这门全新的语言。 《Go语言编程》适合所有层次的开发者阅读。
本书是一本来自一线开发者的Go语言编程入门书,深入浅出地讲述了Go语言的语法特性和编程实践,全书分为基础和项目两部分,基础部分主要介绍Go语言开发环境的搭建、基础语法、数据类型、指针、内置容器、函数、结构体、接口、反射、并发编程、包的应用与管理、目录与文件管理、时间管理、数据库编程等,项目部分主要介绍网页自动化测试程序、网络爬虫程序、网络信息反馈网站的开发实践,此外,还介绍了Go语言程序的编译方法。本书各章还提供了近20个动手练习小项目,便于读者边学边练,迅速提升编程技能。 本书通俗易懂,体系完备,注重实践,适合对Go语言感兴趣的各层次读者使用。
本书是《用Go语言自制解释器》的续篇。在自制解释器时,你已经为Monkey语言实现了类C语法、变量绑定、基本数据类型、算术运算、内置函数、闭包等特性。是时候让Monkey继续成长了!在本书中,Monkey将继续 进化 ,并终成长为成熟的程序设计语言。在已有词法分析器、语法分析器和抽象语法树的基础上,你将为Monkey语言定义字节码指令,指定操作数,编写反汇编程序,构建执行字节码的虚拟机。通过动手学习,你将能够体验从无到有实现类C语言的乐趣。
本书借助代表当今数据挖掘和机器学习*高水平的著名开源软件Weka,通过大量的实践操作,使读者了解并掌握数据挖掘和机器学习的相关技能,拉近理论与实践的距离。全书共分9章,主要内容包括Weka介绍、探索者界面、知识流界面、实验者界面、命令行界面、Weka高级应用、Weka?API、学习方案源代码分析和机器学习实战。?本书系统讲解Weka?3.7.13的操作、理论和应用,内容全面、实例丰富、可操作性强,做到理论与实践的统一。本书适合数据挖掘和机器学习相关人员作为技术参考书使用,也适合用作计算机专业高年级本科生和研究生的教材或教学参考用书。
本书从实践出发讲解Go语言的进阶知识。本书共6章,第1章简单回顾Go语言的发展历史;第2章和第3章系统地介绍CGO编程和Go汇编语言的用法;第4章对RPC和Protobuf技术进行深入介绍,并讲述如何打造一个自己的RPC系统;第5章介绍工业级环境的Web系统的设计和相关技术;第6章介绍Go语言在分布式领域的一些编程技术。书中还涉及CGO和汇编方面的知识,其中CGO能够帮助读者继承的软件遗产,而在深入学习Go运行时,汇编对于理解各种语法设计的底层实现是必不可少的知识。此外,本书还包含一些紧跟潮流的内容,介绍开源界流行的gRPC及其相关应用,讲述Go Web框架中的基本实现原理和大型Web项目中的技术要点,引导读者对Go语言进行更深入的应用。 本书适合对Go语言的应用已经有一些心得,并希望能够深入理解底层实现原理或者是希望能够在Web开发方面结合Go语言来实现进阶
Go语言高级开发与实战聚焦Go语言的高级开发技巧和应用实战。《Go语言高级开发与实战 》共6章,分别为Go语言基础实战、Go语言高级编程技巧、Go Web编程、Go语言并发编程、分布式系统、Go语言秒杀系统实战。Go语言高级开发与实战简洁而不失技术深度,内容丰富全面,以极简的文字介绍了复杂的案例,是学习Go语言高级开发的实用教程。 Go语言高级开发与实战适合Go语言初学者、Go语言中高级开发人员、Web开发工程师阅读,还可作为大中专院校相关专业和培训学校师生的学习用书。
作为时下流行的一种系统编程语言,Go 简单易学,性能很好,且支持各类主流平台。已有大量项目采用 Go 编写,这其中就包括 Docker 等明星作品,其开发和执行效率早已被证明。本书经四年多逐步完善,内容覆盖了语言、运行时、性能优化、工具链等各层面知识。且内容经大量读者反馈和校对,没有明显的缺陷和错误。上卷细致解析了语言规范相关细节,便于读者深入理解语言相关功能的使用方法和注意事项。下卷则对运行时源码做出深度剖析,引导读者透彻了解语言功能背后的支持环境和运行体系,诸如内存分配、垃圾回收和并发调度等。本书不适合编程初学入门,可供有实际编程经验或正在使用Go 工作的人群参考。