精华内容
下载资源
问答
  • Go语言核心编程.pdf.zip

    2019-06-28 10:54:08
    Go语言核心编程》是一本系统介绍Go 语言编程的书籍。首先介绍Go 语言的基础知识,使读者对Go 语言有一个整体的认知。接着围绕Go 语言的三大语言特性:类型系统、接口和并发展开论述,《Go语言核心编程》不单单介绍...
  • 网上云盘中的都是阉割版笔记,这个是全部的笔记。韩顺平go视频的完整版笔记。
  • 本书重点介绍Go语言的实践和并发编程范式,力求让读者不但清楚并发的基本语法和原理,还学会怎么去使用。本书对Go语言规范中的命名类型、非命名类型,底层类型,动态类型等概念进行阐述,让*发者对Go的类型系统有...
  • 尚硅谷的Go语言核心编程课程,讲的挺细致的,可以看看,多学点技术;如果链接过期了,请留言或者私信。
  • go语言核心编程

    2019-07-24 13:55:42
    Go语言核心编程
  • Go语言核心编程视频

    2018-08-28 15:47:09
    尚硅谷 Go语言核心编程课程 全套高清视频 希望能帮到大家
  • 尚硅谷 2018 Go语言核心编程课程
  • Go语言核心编程》一书正式上市

    千次阅读 2018-10-09 15:05:01
    市面上几乎所有的图书我都会购来阅读,但是总是感觉缺少一本讲述Go语言的三大核心:类型系统、接口、并发的图书,这么多年过去了,一直没有人写,最后我决定动手写一本这个主题的图书,书名叫《Go语言核心编程》。...

    书籍概况

    Go语言的核心语言特性包括:类型系统、接口、并发。这三部分是Go语言精华、优美、也是重要的特征,本书紧密围绕这三个主题展开。以“类型系统”为例,Go语言中的类型有:简单类型、复合类型、命名类型、未命名类型、静态类型、动态类型、底层类型、接口类型、具体类型以及类型字面量等诸多概念,这些概念在其他Go类图书里面鲜有介绍,本书试图帮助读者梳理清楚这些类型的含义,建立概念,认清类型本质并学会正确使用;在接口章节,不单介绍了接口概念和用法,还深入分析了接口的机制,使读者对Go语言非侵入式的接口有更深入的理解;在并发编程章节,书中给出了5个并发编程范式,并用图描述并发程序的模型,通俗易懂,这也是本书读特点。此外本书还拿出一整章内容介绍Go语言编程过程中可能遇到的陷阱,不仅告诉读者陷阱是什么,正确使用方式是什么,同时也给出出现这种问题的根本原因,使读者后续能够避免犯同样的错误。本书最后从哲学角度论述下Go语言的编程思想,相信Go语言爱好者一定可以从书中找到自己感兴趣内容。 感兴趣的点击图片链接书籍的详情。

    这本书特点

    1. 不是前篇一律的堆积罗列语法。
      本书精炼的使用一个章节介绍了Go语言的基础支持:包括关键字、数据类型和控制结构。不是一个个语法点的堆砌,而是将源程序看成一个整体,从源代码的整体构造上讲解语法,事半功倍。
    2. 既讲到怎么使用,也讲到内部原理。
      Go有一些明显区别其他语言的地方,比如函数的多值返回、并发等,在介绍这些专题的章节最后都会有一个深入分析原理的章节。介绍下Go语言的内部实现机制和原理。
    3. 编程哲学方面的思考。
      最后在本章的最后分析下为什么Go语言更适合编程,更适合建模解决现实问题,基于几个哲学方面的思考,让读者更深层次上理解Go的设计思想。

    图书连接

    点击图片查看详情
    go.jpg

    写作背景

    2007 年,Go 语言诞生于谷歌公司,2009 年开源,2012 年推出1.0 版本,曾两次获得TIOBE年度语言(2009 年和2016 年)。2012 年起,全球大量的开源项目开始使用Go 语言进行开发,目前Go 语言已经成为云计算领域事实上的标准语言,特别是在容器领域,诞生了一大批优秀的开源软件,如Docker、Kubernetes 等。2017 年区块链技术在国内大热,区块链两个大的技术平台以太坊(Ethereum)和超级账本(Hyperledger)子项目Fabric 都是基于Go 语言构建的。Go 语言的应用领域逐步扩大,目前在区块链、云计算、中间件和服务器编程领域显现出明显的优势。Go 语言最先在云计算公司盛行,随后大量的互联网初创企业将Go 语言作为后台主要开发语言。目前,无论互联网公司里的独角兽,还是BAT(百度、阿里巴巴、腾讯),都已将Go语言作为其技术栈的重要组成部分。市场对于Go 语言编程人才的需求量也在持续上升。

    目前,Go 语言编程类图书有如下几个类别。

    基础全面型

    七牛团队写作和翻译的几本书(《Go 语言编程》《Go 程序设计语言》等),系统地介绍了Go 开发的基础知识,为Go 语言在国内的推广做出了很大的贡献。

    源码深入型

    雨痕的《Go 语言学习笔记》,上半部分是对 Go 语言基础知识的总结,下半部分对源码进行了分析,是学习Go 语言内部原理非常好的参考书。

    专业领域型

    专注于介绍某个应用领域,比如谢孟军的《Go Web 编程》,这类图书主要是介绍使用Go
    语言在某个领域进行开发的相关知识。

    市面上Go 语言的图书这么多了,为什么又要写一本,本书和市面上的图书有什么区别呢?这也是我写这本书之前就认真思考过的问题。我发现市面上缺少介绍Go 语言核心特性和使用陷阱的书。Go 语言核心特性包括类型系统、接口、并发,这三部分是Go 语言最精华、最优美、最重要的语言特性。于是我就围绕这三个主题写了本书,书名就叫《Go 语言核心编程》。以类型系统为例,Go 语言中的类型涉及简单类型、复合类型、命名类型、未命名类型、静态类型、动态类型、底层类型、接口类型、具体类型及类型字面量等诸多概念,这些在先前的书籍里没有系统地介绍过,本书试图帮助读者梳理清楚这些类型的含义,建立概念,认清类型本质并学会使用;在并发编程中给出了5 个并发编程范式并系统地介绍了context 标准库,这也是本书特有的。

    内容简介

    本书共9 章,围绕如下主题展开:基础知识(第1 章)、语言核心(第2 章~第7 章)、工程管理(第8 章)和编程哲学(第9 章)。

    基础知识

    第1 章介绍Go 语言编程的基础知识。基础知识部分力求从系统性的角度讲述Go 语言简洁的语法知识,试图帮助读者了解Go 语言源程序基本结构,这是本书不同于其他书籍的地方。本章先对Go 的源程序进行整体介绍,然后从词法分析的角度介绍Go 语言的各个token,接着介绍Go 语言的基础语法:变量和常量、数据类型及控制结构,让读者学习Go 语言的语法知识时可以“既见树木,又见森林”。

    语言核心

    本书的第2~7 章讲解Go 语言核心知识,这部分是本书最核心、最重要的部分,主要围绕如下4 个主题展开。

    1.类型系统

    本书用3 章的篇幅来讲解Go 语言的类型系统,分别是第2 章函数、第3 章类型系统和第4章接口。类型系统是Go 语言的灵魂,Go 语言小而美的类型系统是其区别于其他语言的显著特征。函数在Go 语言中是“一等公民”,非侵入式的接口设计也很有特点。类型系统是本书的一条主要线索,几乎贯穿本书的所有章节,在反射章节里会对Go 的类型系统做一个总结。掌握类型系统是写好Go 程序的关键。

    2.并发编程

    第5 章介绍Go 并发编程,并发编程的原生支持是Go 语言显著的语言特征。“不要通过共享内存来通信,而是通过通信来共享内存”,本章首先讲解语言层面对并发的支持,接着讲解context 标准库的知识,最后讲解常用的并发范式和Go 并发模型。

    3.反射

    第6 章介绍Go 语言反射的相关知识。反射是Go 语言的高级特性,反射是把“双刃剑”,用好了会有强大的威力,但由于其复杂性且易产生运行时panic,因此反射又表现出脆弱性。Go 语言没有提供泛型支持,所以在开发框架和大型系统中反射是必须面对的一个技术点,市面上的图书对这部分的介绍不多,本书分类总结了Go 的反射API,尽可能梳理出条理清晰的API结构;同时以类型系统和接口底层实现为基础来介绍反射;最后介绍著名的Web 框架martini中使用的依赖注入库inject。

    4.陷阱和习惯用法

    第7 章介绍Go 语言陷阱和一些习惯用法,包括Go 语言使用过程中容易出错和初学者容易困惑的知识点。Go 语言虽然设计简洁,但在某些方面还是有瑕疵的,比如 defer 陷阱、短变量的声明range 临时变量共享等。同时Go 又有其鲜明的书写格式和习惯用法,本章的最后会介绍这些内容。

    工程管理

    Go 语言是一门面向工程的语言,而不是学术界的产物,第8 章介绍Go 语言工程管理方面的知识,主要介绍Go 的编程环境、命名空间和包管理的相关内容。

    编程哲学

    第9 章讨论编程哲学,这部分内容不是介绍编程细节知识,读者可以把它当作散文来读。先对Go 语言编程哲学做一个总结:少即是多,世界是并行的,组合优于继承,面向接口编程,等等,试图从哲学的角度来阐述这些设计思想的先进性。最后介绍Go 语言的里程碑事件及未来的发展方向。

    相关约定

    本书使用Go 代表Go 语言的简写,使用go 表示Go 语言的并发关键字,使用goroutine 代表Go 语言中的并发执行体。通道和chan 都代表Go 语言的通信管道。切片和slice 都表示Go语言内置的可变数组。本书使用实例或者类型实例表示具体类型的变量,而没有使用传统语言对象的概念。标准库和标准包会混用,都是指Go 语言自带的标准库。复制和拷贝具有相同的语义,都表示将数据复制一份并拷贝到另一处内存空间。本书是基于Go 1.10.2 写作的,新版本的变动请读者以官方文档为准。截至本书出版时,Go 1.11 发布,官方推出了新的包管理工具go mod,go mode 兼容dep,dep 仍可放心使用,go mod 是新增的功能需要一段时间成熟。

    总结

    本书绝大大部分内容是笔者六年来学习和实践Go语言过程中的总结和感悟,成书过程中也参阅了部分网上和官方资料,由于能力有限,错误或者疏忽之处难免发生,欢迎读者指正,以便我们及时修订,我的邮箱是email.tata@qq.com。

    展开全文
  • 接着围绕Go 语言的三大语言特性:类型系统、接口和并发展开论述,《Go语言核心编程》不单单介绍每个语言特性怎么使用,在章节的最后还对重要语言特性的底层实现原理做了介绍。接着介绍反射这个高级语言特征。
  • 2.1 go语言的学习方法: 1)高效而愉快的学习。 2)先建立一个整体框架,然后细节。 3)在实际工作中,要培训“用到什么,能够快速学习什么”的能力。 4)先know how,再know why。 5)软件编程是一门“做中学...

    //前言:以下的“2、”表示第二个视频的学习笔记。视频链接https://www.bilibili.com/video/BV1Af4y1x7Jg?share_source=copy_web

    2、

    2.1 go语言的学习方法:

    1)高效而愉快的学习。

    2)先建立一个整体框架,然后细节。

    3)在实际工作中,要培训“用到什么,能够快速学习什么”的能力。

    4)先know how,再know why。

    5)软件编程是一门“做中学”的学科,不是会了再做,而是做了再会。

    6)适当的囫囵吞枣。

    7)学习软件编程是在琢磨别人怎么做,而不是我认为应该怎么做的过程。

     

    6、

    6.1

    go语言的文件都要归属于一个包,而不能单独存在。

     

    12、

    12.1 环境变量:

    GOROOT    指定SDK的安装目录,即go的安装路径

    Path    添加SDK的/bin目录

    GOPATH    工作目录,将来我们的go项目的工作路径。

    17、

    17.1 golang执行流程分析

    1)编译后再运行:.go源文件——go build编译为可执行文件(如.exe)——运行

    2)对源码执行go run:.go源文件——go run编译运行一步进行

    // 以上两种方式的区别:

    ①如果我们先编译生成可执行文件,那么我们可以将该可执行文件拷贝到没有go开发环境的机器上,仍然可以运行。

    ②如果我们直接go run源码,那么另一台机器需要运行的话,必须要安装go环境。

    ③在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以可执行文件变大了很多。

     

    18、

    18.1 编译说明:

    1)编译器将go源码编译为二进制文件。

    2)go build -o myhello.exe可以编译为指定的文件名,换了名字后的.exe文件仍然可以直接执行。

    3)如果程序有错误,编译时,会在错误的那一行报错。

     

    19、

    19.1 Go程序开发注意事项:

    1)Go源文件以go为扩展名,否则可能无法编译。

    2)Go应用程序的执行入口是main()函数。

    3)Go语言严格区分大小写。

    4)Go方法由一条条语句构成,每个语句后不需要分号(go语言会在每行后自动加分号)

    5)Go编译器是一行一行进行编译的,因此我们一行就写一行语句,不能把多条语句写在同一行,否则报错。

    6)Go语言定义的变量或者import的包如果没有使用到,代码不能编译通过。

    7)大括号都是成对出现的,缺一不可。

     

    20、

    20.1 Go语言转义字符:

    \t    一个制表位,同Tab;通常用来排版对齐。

    \n    换行

    \\    一个\

    \"    一个"

    \r    一个回车;从当前行的最前面开始输出,覆盖掉以前的内容。如“天龙八部\r张飞”会输出“张飞八部”。

     

    21、

    20.1 Golang开发常见问题和解决方法:

    1)找不到文件:源文件名不存在或者写错,或者当前路径错误。

    2)语法错误:看编译器报告的错误信息。

     

    22、

    22.1 注释:Go支持C语言风格的/* */块注释,也支持C++风格的//行注释

    1)行注释:// ;Go语言官方推荐使用行注释。

    2)块注释:/* */ ;块注释里不允许有块注释嵌套,否则可能会导致块注释匹配错误。

     

    23、

    23.1 规范的代码风格:

    1)正确的注释和注释风格:

    ①Go官方推荐使用行注释来注释整个方法和语句;

    2)正确的缩进和空白:

    ①使用一次tab操作,实现缩进,默认整体向右移动,使用shift+tab整体左移;

    ②可以使用gofmt格式化;gofmt main.go;或者也可以用gofmt -w main.go命令,该命令表示将格式化后的内容重新写入到文件里。

    ③运算符两边习惯性各加一个空格。

    3)行长约定:

    ①一行最长不建议超过80个字符,否则换行。换行方式:

    a. 较长的字符串可以用逗号分隔,换行;但逗号的连接会加空格。

    b.直接输出时加换行符换行输出。

     

    24、

    24.1 Golang官方编程指南:

    (官网https://golang.org也可以进https://golang.google.cn/看包的使用,也可以上https://tour.go-zh.org/welcome/1查看编程指南)

    API:Application Program Interface,应用程序编程接口。也可以通俗地理解为Go的各个包的函数。

     

    25、

    25.1 Golang标准库API文档:(国内可以进https://studygolang.com/pkgdoc查看)

     

     

     

     

     

     

    展开全文
  • Go语言核心编程课程
  • Go语言核心编程(一)

    2020-09-19 16:09:28
    Golang核心编程: 区块链(去中心化,让人人都可以参与数据库的记录)研发工程师 Go服务器端(美团)/游戏软件工程师 Golang分布式/云计算软件工程师(京东) Go语言,我们可以简单的写成Golanguage,简写为Golang...

    Golang学习方向

    Golang核心编程:

    • 区块链(去中心化,让人人都可以参与数据库的记录)研发工程师
    • Go服务器端(美团)/游戏软件工程师
    • Golang分布式/云计算软件工程师(京东)

    Go语言,我们可以简单的写成Golanguage,简写为Golang。

    Golang的应用领域

    • 区块链应用开发
    • 后端服务器应用
    • 云计算/云服务后台应用

    Go语言概述

    程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。
    2009年11月10日,Google将Go语言以开放源代码的方式向全球发布;
    2015年8月19日,Go1.5版发布,本次更新中移除了“最后残余的C代码”。
    Go语言的特点:
    Go语言保证了既能达到静态编译语言的安全和性能,又达到了动态语言开发维护的高效率,Go语言既有C静态语言程序的运行速度,又能达到Python动态语言的快速开发。

    1. 从C语言中继承了很多理念,包括表达式语法,控制结构,基础数据类型,调用参数传值,指针等,也保留了和C语言一样的编译运行方式及弱化的指针;
    2. 引入包的概念,用于组织程序结构,Go语言的一个文件都要归属于一个包,而不能单独存在;
    3. 垃圾回收机制,内存自动回收,不需开发人员管理;
    4. 天然并发:
      1) 从语言层面支持并发,实现简单;
      2) goroutine,轻量级线程,可实现大并发处理,高效利用多核;
      3) 基于CPS并发模型实现。
    5. 吸收了管道通信机制,形成Go语言特有的管道channel
      通过管道channel,可以实现不同的goroute之间的相互通信
    6. 函数返回多个值
    7. 新的创新:比如切片、延时执行defer等

    Go环境配置

    下载SDK和去官网下载Go的安装程序,直接傻瓜安装即可。
    之后进入到解压后的SDK的压缩包,SDK解压后会看到一个go文件夹,进入到该文件夹下的bin目录,并进入控制台命令(windows),若输入go version可看到go版本的输出信息,即证明go安装成功,但注意为了以后的使用方便,还需进一步地配置Go的环境变量,这里只针对windows进行配置说明:

    GOROOTE:\Go\
    GOPATHD:\goproject
    pathE:\Go\bin %GOROOT%\bin

    根据自己Go和SDK的安装目录按上面进行配置即可,之后重新打开windows的控制台窗口,这次无需进入go的bin目录,输入go version也能看到安装的go的版本了。大功告成!

    windows下开发步骤:

    1. 安装windows版本 VScode
    2. 将Go代码编写到扩展名为hello.go的文件中
      [说明:源码在工作目录src/go_code下,如d:/goproject/src/go_code]
    3. 通过go build命令对该go文件进行编译,生成.exe文件
    4. 在dos命令行下执行.exe文件就可以看到运行效果
    5. 注意:通过go run命令可以直接运行hello.go程序[类似执行一个脚本文件的格式]

    注意:如果对go程序文件进行编译运行时出现以下错误的话:

    import cycle not allowed 
    package main
    imports fmt
    imports errors
    import int
    

    首先代码可能是没问题的,这时唯一的解决办法就是…重装go了…

    Golang执行流程分析:
    如果是对源码编译后,再执行,Go的执行流程如下图:
    在这里插入图片描述
    如果我们是对源码直接执行go run 源码,Go的执行流程如下图:

    在这里插入图片描述

    Golang执行流程分析:

    说明:两种执行流程的方式区别

    1. 如果我们先编译生成了可执行文件,那么我们可以将该可执行文件拷贝到没有go开发环境的机器上,仍然可以运行;
    2. 如果我们是直接go run go源代码,那么如果要在另外一个机器上这么运行,也需要go开发环境,否则无法执行;

    什么是编译?
    1) 有了go源文件,通过编译器将其编译成机器可以识别的二进制文件;
    2)在该源文件目录下,通过go build对hello.go文件进行编译。可以指定生成的可执行文件名,在windows下必须是.exe后缀;

    go build -o myhello.exe hello.go
    

    3)如果程序没有错误,没有任何提示,会在当前目录下出现一个可执行文件;
    4)如果程序有错误,编译时,会在错误的那行报错。

    Go程序开发注意事项(重点)

    1)Go源文件以"go"为扩展名
    2)Go应用程序的执行入口是main()方法
    3)Go语言严格区分大小写
    4)Go方法由一条条语句构成,每个语句后不需要分号(Go语言会在每行后自动加分号),这也体现出Golang的简洁性
    5)Go编译器是一行一行进行编译的,因此我们一行就写一条语句,不能把多条语句写在同一个,否则报错
    6)go语言定义的变量或者import的包如果没有使用到,代码不能编译通过;
    7)大括号都是成对出现的,缺一不可。

    Golang常用的转义字符
    1. \t:一个制表位,实现对齐的功能
      2)\n:换行符
      3)\:一个
      4)":一个"
    2. \r:一个回车 fmt.Println(“hello world!\rzahngsan”)

    Golang官方网站:https://golang.org
    Golang API官方文档:https://golang.org/pkg
    Golang 中文网 在线标准库文档:https://studygolang.com/pkgdoc

    Go——变量

    变量相当于内存中的一个数据存储空间的表示,你可以把变量看作是一个房间的门牌号,通过门牌号我们可以找到房间,同样的道理,通过变量名可以访问到变量(值)。
    变量使用的基本步骤:
    1)声明变量
    2)赋值
    3)使用
    在这里插入图片描述

    变量中的使用事项:

    • 变量表示内存中的一个存储区域;
    • 该区域有自己的名称(变量名)和类型(数据类型);
    • Golang变量使用的三种方式:
      1)指定变量类型,声明后若不赋值,使用默认值
      2)根据值自行判定变量类型
      3)省略var,注意:=左侧的变量不应该是已经声明过的,否则会导致编译错误
    • 多变量声明:在编程中,有时我们需要一次性声明多个变量,Golang也提供这样的语法
    var num1,num2,num3 int
    
    num1,name,num2 := 10,"zhangsan",22
    
    • 该区域的数据值可以在同一类型范围内不断变化
    • 变量在同一个作用域内不能重名
    • 变量=变量名+值+数据类型
    • Golang的变量如果没有赋初值,编译器会使用默认值,比如int默认值0,string默认值为空串

    变量的数据类型:
    每一种数据都定义了明确的数据类型,在内存中分配了不同大小的内存空间。
    在这里插入图片描述
    整型的类型:

    类型有无符号占用存储空间表数范围备注
    int81字节-128~127
    int162字节-2^15~ 2^15-1
    int324字节-2^31 ~ 2^31-1
    int648字节-2^43 ~ 2^43-1
    类型有无符号占用存储空间表数范围备注
    uint81字节0~255
    uint162字节0~2^16-1
    uint324字节0~2^32-1
    uint648字节0~2^64-1
    类型有无符号占用存储空间表数范围备注
    int32位系统4个字节、64位系统8个字节-2^31 ~ 2^31-1、-2 ^63 ~ 2^63-1
    uint32位系统4个字节、64位系统8个字节0~2^32-1 、0~ 2^64-1
    rune与int32一样- 2^31 ~2^31-1等价int32,表示一个Unicode码
    byte与uint8等价0~255当要存储字符时选用byte

    整型的使用细节:
    1)Golang各整数类型分:有符号和无符号,int uint的大小和系统有关;
    2)Golang的整型默认声明为int型
    3)如何在程序查看某个变量的字节大小和数据类型;

    unsafe.Sizeof(n1)
    

    4)Golang程序中整型变量在使用时,遵守保小不保大的原则,即:在保证程序正确运行下,尽量使用占用空间小的数据类型;
    5)bit:计算机中的最小存储单位,byte:计算机中基本存储单元。

    浮点型的分类:

    类型占用存储空间表数范围
    单精度float324字节-3.403E38~3.403E38
    双精度float648字节-1.798E308~1.798E308

    其中,浮点数=符号位+指数位+尾数位,浮点数都是有符号的。

    浮点型使用细节:

    • Golang浮点类型有固定的范围和字段长度,不受具体OS的影响

    • Golang的浮点型默认声明float64类型

    • 浮点型常量有两种表示形式:
      十进制数形式、科学计数法形式

    • 通常情况下,应该使用float64,因为它比float32更精确

    字符类型:
    字符串就是一串固定长度的字符连接起来的字符序列,Go的字符串是由单个字节连接起来的,也就是说对于传统的字符串是由字符组成的,而Go的字符串不同,它是由字节组成的

    func main(){
    	var c1 byte = 'a'
    	var c2 byte = '0'
    	var c3 int = '北'
    	fmt.Println("c1=",c1,"c2=",c2)
    	fmt.Println("c1=%c c2=%c",c1,c2)
    	fmt.Println("c3=%c",c3)
    

    如果我们保存的字符在ASCII表,比如[0-1,a-z,A-Z],直接可以保存到byte;
    如果我们保存的字符对应码值大于255,这时可以考虑使用uint保存;
    如果我们需要按照字符的方式输出,这时需要格式化输出,fmt.Printf(“c1=%c”,c1)

    字符串注意事项和使用细节:

    • Go语言的字符串的字节使用UTF-8编码标识Unicode文本,这样Golang统一使用UTF-8编码

    • 字符串一旦赋值了,字符串就不能修改了,在Go中字符串是不可变的

    • 字符串的两种表示形式:
      (1)双引号,会识别转义字符
      (2)反引号,以字符串的原生形式输出,包括换行和特殊字符,可以实现防止攻击、输出源代码等效果

    • 字符串拼接方式

    • 当一行字符串太长时,需要使用到多行字符串

    布尔类型:

    • 布尔类型也叫bool类型,bool类型数据只允许取值true和false
    • bool类型占1个字节
    • boolean类型适于逻辑运算,一般用于程序流程控制

    基本数据类型的转换:
    Golang和java/c不同,Go在不同类型的变量之间赋值时需要显式转换,也就是说Golang中数据类型不能自动转换

    func main(){
    	var i int32 = 100
    	var n1 float32 = float32(i)
    

    注:被转换的是变量存储的数据(即值),变量本身的数据类型并没有变化!而且,在转换中,比如将int64转成int8,编译不会报错,只是转换的结果是按溢出处理的,和我们希望的结果不一样

    基本数据类型和string的转换:
    方式一:fmt.Sprintf("%参数",表达式)
    方式二:使用strconv包的函数(string类型转基本数据类型也可用)
    具体细节使用内容可以查看手册:
    https://studygolang.com/pkgdoc

    展开全文
  • 韩顺平又一力作 开发必备 简单快速上手go语言 go大有可为
  • 下载地址:百度网盘

     

    下载地址:百度网盘

    展开全文
  • Go语言核心编程视频教程,
  • 文章目录2.1 Go语言的特点2.2 Go语言开发工具(Mac版本)2.3 Golang执行流程分析2.4 Go程序开发注意事项2.5 Go语言的转义字符2.6 Golang中的注释形式2.7 规范的代码风格2.8 Golang标准库API文档 2.1 Go语言的特点 Go...
  • 学习的视频参考b站上尚硅谷韩顺平老师的Go语言核心编程。 1.1 Golang的学习方向 Go语言,可以简单地写成GolangGolang学习方向: 区块链研发工程师 Go服务器端/游戏软件工程师 Golang分布式/云计算软件...
  • Go语言核心编程》 第1章 基础知识 总结Go的源程序基本构成: (1)关键字引导程序的基本结构。 (2)内置类型标识符辅助声明变量和常量。 (3)字面量辅助变量和常量的初始化。 (4)分隔符帮助Go编译器识别各个token。 ...
  • //src/runtime/runtime2.go type iface struct { tab *itab //itab存放类型及方法指针信息 data unsafe.Pointer //数据信息 } type itab struct { inter *interfacetype //接口自身的静态类型 _type *_type ...
  • ThreadGroup是基于线程并发的编程语言中常用的一个概念,当一个线程派生出一个子线程后通常会加入父线程的线程组(未指定线程组的情况下)中, 最后可以通过ThreadGroup来控制一组线程的退出等操作, 然后在go语言中...
  • go语言编程 高清目录 PDF 电子书
  • golang核心编程资料

    2019-05-09 08:56:28
    李文塔著 go语言核心编程go语言书籍,golang初学者 经典推荐!
  • Go程序设计语言】(详细书签、清晰完整版)
  • blog-service(博客后端) blog-service 博客后端 ...作者:徐新华(polaris),GitHub:,微信公众号:Go语言中文网。 购买链接 京东: 当当: 天猫: 目录 第 2 章 HTTP应用:写一个完整的博客后端
  • 由国内**个核心服务完全采用Go语言实现的团队——七牛团队核心成员翻译。 《Go语言程序设计》既是一本实用的Go语言教程,又是一本权威的Go语言参考手册。书中从如何获取和安装Go语言环境,以及如何建立和运行Go程序...
  • 学习视频来源:《韩顺平Go语言核心编程387集完整版》
  • Go语言的类型系统分为命名类型、非命名类型、底层类型、动态类型和静态类型等。 命名类型 类型可以通过标识符来表示,这种类型称为命名类型。Go语言的基本类型中有20个预声明简单类型都是命名类型,Go语言还有一种...
  • 学习视频来源:《韩顺平Go语言核心编程387集完整版》

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 38,320
精华内容 15,328
关键字:

go语言核心编程