热门 最新 精选 话题 上榜
03.第一个Go程序及GO的基本命令文章目录03.第一个Go程序及GO的基本命令一、第一个Go程序Hello Worldgo mod init编写代码编译go rungo install跨平台编译二、命令介绍1.基本介绍2.get命令三、工程目录一、第一个Go程序Hello World现在我们来创建第一个Go项目——hello。在我们桌面创建一个hello目录。go mod init使用go
GO
原创 2021-07-06 11:52:05
483阅读
02.GO开发环境搭建文章目录02.GO开发环境搭建一、Go 开发编辑器二、GoLand环境搭建goland终端配置成shell三、VS Code介绍下载与安装配置安装中文简体插件安装go扩展变更编辑器主题安装Go语言开发工具包配置VSCode开启自动保存配置代码片段快捷键一、Go 开发编辑器Go采用的是UTF-8编码的文本文件存放源代码,理论上使用任何一款文本编辑
GO
原创 2021-07-06 11:51:41
465阅读
Go语言的主要特征文章目录Go语言的主要特征一、golang 简介1.来历2.核心思想3.优点4.Go语言的主要特征:5.Golang文件名:6.Go语言命名:命名规则Go只有25个关键字Go还有37个保留字可见性:7.Go语言声明:8.Go项目构建及编译9.go 编译问题一、golang 简介1.来历很久以前,有一个IT公司,这公司有个传统,允许员工拥有20
GO
转载 2021-07-06 11:51:00
120阅读
03.Go语言之依赖管理Go语言的依赖管理随着版本的更迭正逐渐完善起来。文章目录03.Go语言之依赖管理一、依赖管理为什么需要依赖管理二、godep1.介绍2.安装3.基本命令4.使用godep5.Vender机制6.godep开发流程三、go module1. GO111MODULE2.GOPROXY3. go mod命令4.go.mod文件介绍依赖的版本replace5.整理依赖6
GO
原创 2021-07-06 11:50:44
206阅读
16.Go高级之Map实现原理一、Map实现原理概述笼统的来说,go的map底层是一个hash表(HashMap),表面上看map只有键值对结构,实际上在存储键值对的过程中涉及到了数组和链表。HashMap之所以高效,是因为其结合了顺序存储(数组)和链式存储(链表)两种存储结构。数组是HashMap的主干,在数组下有一个类型为链表的元素。
GO
原创 2021-07-06 11:50:04
486阅读
04.Go基础之变量和常量文章目录04.Go基础之变量和常量一、 变量定义规范二、关键字1.标识符2.关键字3.保留字4.注意点三、变量1.变量的来历2.变量的类型3.声明变量4.标准声明(声明单个变量)5.声明多个变量6.变量的初始化7.类型推导(Type Inference)8.简短声明9.匿名变量五、常量1.常量定义2.声明多个常量3.iota4.几个常见的`iota`示例:一、 变量定义规范Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则:一
原创 2021-07-06 11:49:32
355阅读
05.Go语言基础之基本数据类型文章目录05.Go语言基础之基本数据类型一、基本数据类型二、整型特殊整型数字字面量语法(Number literals syntax)三、浮点型四、复数五、布尔值六、字符串字符串转义符多行字符串字符串的常用操作七、byte和rune类型八、类型转换一、基本数据类型Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)等。Go 语言的基本类型和其他语言大同小异。二、整型整型分为以下两个大类:
原创 2021-07-06 11:49:31
291阅读
07.Go语言基础之流程控制文章目录07.Go语言基础之流程控制一、流程控制二、if else(分支结构)if条件判断基本语法if 条件判断特殊写法三、for (循环结构)无限循环小练习:打印九九乘法表四、for range(键值循环)遍历数组、切片——获得索引和元素遍历字符串——获得字符遍历map——获得map的键和值遍历通道(channel)——接收通道数据在遍历中选择希望获得的变量五、switch case基本写法一分支多值分支表达式跨越case的fallthrough—兼容C语言的case设计六、
原创 2021-07-06 11:49:28
207阅读
06.GO语言基础之基本运算符文章目录06.GO语言基础之基本运算符一、运算符内置运算符:二、算术运算符三、关系运算符四、逻辑运算符五、位运算符六、赋值运算符一、运算符作用:运算符用于在程序运行时执行数学或逻辑运算。内置运算符:Go 语言内置的运算符有:算术运算符关系运算符逻辑运算符位运算符赋值运算符二、算术运算符运算符描述+相加-相减*相乘/相除%求余注意: ++(自增)和--(自减)在Go语言中是单独的语句,并不是运
原创 2021-07-06 11:49:28
145阅读
09.Go基础之下划线“_”是特殊标识符,用来忽略结果文章目录09.Go基础之下划线下划线在import中下划线在代码中下划线在import中 在Golang里,import的作用是导入其他package。import 下划线(如:import _ hello/imp)的作用:当导入一个包时,该包下的文件里所有init()函数都会被执行,然而,有些时候我们并不需要把整个包都导入进来,仅仅是是希望它执行init()函数而已。这个时候就可以使用 import _ 引用该包。即使用【import _
原创 2021-07-06 11:49:26
717阅读
08.Go语言之数组文章目录08.Go语言之数组一、Array(数组)简介二、数组定义数组定义数组声明三、数组的初始化方式一方法二方法三四、数组的遍历五、多维数组二维数组二维数组的定义二维数组的遍历六、数组是值类型(数组拷贝和传参)七、小练习求数组所有元素之和找出数组中和为给定值的两个元素的下标,例如数组[1,3,5,8,7],找出两个元素之和等于8的下标分别是(0,4)和(1,2)一、Array(数组)简介数组是Go语言编程中最常用的数据结构之一。顾名思义,数组就是指一系列同一类型数据的集合。数组
原创 2021-07-06 11:49:26
965阅读
10.Go基础之切片文章目录10.Go基础之切片一、引入二、切片(Slice)概述三、切片的定义四、切片的初始化五、切片的长度和容量六、使用make()函数构造切片七、切片的本质八、判断切片是否为空九、切片表达式简单切片表达式完整切片表达式十、切片不能直接比较十一、切片的赋值拷贝十二、切片遍历十三、append()方法为切片扩容添加元素十四、切片的扩容策略十五、使用copy()函数复制切片十六、从切片中删除元素十七、小练习一、引入因为数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限
原创 2021-07-06 11:49:25
186阅读
13.Go语言基础之mapGo语言中提供的映射关系容器为map,其内部使用散列表(hash)实现。文章目录13.Go语言基础之map一、map二、map定义三、map基本使用四、判断某个键是否存在五、Map的遍历六、使用delete()函数删除键值对七、按照指定顺序遍历map八、元素为map类型的切片九、值为切片类型的map十、Map的相等性十一、Map 是引用类型十二、小练习一、mapmap是一种无序的基于key-value的数据结构,类似于python中的字典。Go语言中的map是引用类型,
原创 2021-07-06 11:49:24
222阅读
14.Go语言基础之函数文章目录14.Go语言基础之函数一、函数go函数特点二、函数定义三、函数的调用四、参数1.类型简写2.可变参数五、返回值多返回值返回值命名空白符返回值补充六、函数进阶变量作用域全局变量局部变量七、函数类型与变量1.定义函数类型2.函数类型变量八、高阶函数1.函数作为参数2.函数作为返回值九、匿名函数和闭包1.匿名函数2.闭包十、defer语句1.defer语句2.defer执行时机3.defer经典案例4.defer 经典面试题十一、内置函数介绍十二、panic/recover十三
原创 2021-07-06 11:49:23
183阅读
15.GO基础之关于切片操作的技巧文章目录15.GO基础之关于切片操作的技巧一、切片的常用技巧复制剪切删除剪切或删除操作可能引起的内存泄露剪切删除删除但不保留元素原有顺序内部扩张尾部扩张过滤插入追加弹出前插二、其他技巧过滤而不分配内存翻转洗牌使用最小分配进行批处理原地删除重复元素(元素可比较)存在就移到前面,不存在就插入到前面滑动窗口一、切片的常用技巧复制将切片a中的元素复制到切片b中。最简单的、最常用的方法就是使用内置的copy函数。b = make([]T, len(a)) // 一次将内
原创 2021-07-06 11:49:21
348阅读
Golang内置类型和函数文章目录Golang内置类型和函数一、内置类型1. 值类型:2. 引用类型:(指针类型)二、内置函数三、内置接口error一、内置类型1. 值类型: bool int(32 or 64), int8, int16, int32, int64 uint(32 or 64), uint8(byte), uint16, uint32, uint64 float32, float64 string complex64, complex1
原创 2021-07-06 11:49:17
288阅读
00.Init函数和main函数一、init函数go语言中init函数用于包(package)的初始化,该函数是go语言的一个重要特性。有下面的特征:init函数是用于程序执行前做包的初始化的函数,比如初始化包里的变量等每个包可以拥有多个init函数包的每个源文件也可以拥有多个init函数同一个包中多个init函数的执行顺序go语言没有明确的定义(说明)不同包的init函数按照包导入的依赖关系决定该初始化函数的执行顺序init函数不能被其他函数调用,而是在main函数执行之前,自动被调用
原创 2021-07-06 11:49:17
1544阅读
Go二进制文件反向工程 | Gopher Daily (2020.10.12) ʕ◔ϖ◔ʔ
原创 2021-07-06 11:46:14
182阅读
不管是 sqlx,redis,以及 mongo ,等以后可能要支持的数据源类型,底层的池化处理都是通用的;所以当开发者需要池化处理组件时,go-zero 也是提供的。
Go
转载 2021-07-06 11:39:02
406阅读
1点赞
1965-2020年最流行的编程语言 | Gopher Daily (2020.12.19) ʕ◔ϖ◔ʔ
原创 2021-07-06 11:39:01
40阅读
解锁Go语言的2020:变革前夜 | Gopher Daily (2020.12.21) ʕ◔ϖ◔ʔ
原创 2021-07-06 11:12:05
57阅读
使用TLA+构建查找goroutine并发bug的模型 | Gopher Daily (2020.09.26) ʕ◔ϖ◔ʔ
GO
转载 2021-07-06 10:57:41
108阅读
Go二进制文件逆向分析:从理论到实战 | Gopher Daily (2020.10.16) ʕ◔ϖ◔ʔ
原创 2021-07-06 10:53:15
90阅读
近日,Go泛型负责人Ian Lance Taylor发布了一个issue,说明go团队想引入新的type set概念,并去除原Go泛型方案中置于interface定义中的type list中的type关键字。这里根据自己的理解做简短解读。
原创 2021-07-06 10:50:25
56阅读
go的
原创 2021-07-06 10:43:54
71阅读
时间和日期函数时间和日期相关函数,需要导入time包获取当前时间 now := time.Now()如何获取到其他的日期信息 now.Format()fmt.Printf(’%d-%d-%d %d:%d:%d’, now.Year(),now.Month(),…)格式化日期时间的第二种方式fmt.Printf(now.Format(“2006-01-02 15:04:05”))...
原创 2021-07-06 10:43:39
114阅读
goroutine(协程)&& channel(管道)使用并发或者并行的方式,CPU线程和进程说明进程就是程序在操作系统中的一次执行过程中,是系统进行资源分配和调度的基本单位。线程是进程的一个执行实例,是程序执行的最小单元,它是比进程更小的能独立运行的基本单位。一个进程可以创建和销毁多个线程,同一个进程中的多个线程可以并发执行一个程序至少有一个进程,一个进程至少有一个...
原创 2021-07-06 10:43:22
211阅读
用beego框架连接mysql,你可能会遇到 sql: unknown driver “mysql” (forgotten import?) 这个报错。 注意需要在main.go(对应)文件中引入自己使用的mysql框架。加上这个包 注意这个包前边要有个下划线 为了只初始化,而不使用...
原创 2021-07-06 10:43:10
303阅读
冒泡算法的实现:func bubbleSort(arr []int) []int { n := len(arr) for i := 0; i < n-1; i++ { for j:=0;j<n-1-i;j++{ if arr[j]>arr[j+1]{ arr[j],arr[j+1] = arr[j+1],arr[j] } } } return...
原创 2021-07-06 10:42:37
96阅读
我们知道,在 Linux 下使用 goland 可以直接下载官网的压缩包,最后在 bin 目录下直接运行脚本即可。 但是每次需要运行脚本就比较难过了,当然可以使用 alias 来解决这个问题,但是我们还有另外一种方案,就是把下载好的应用程序加到应用列表中。 ubuntu 所有的应用是在 /usr/share/applications 里的,其中每个应用都有自己的 .desktop 文件,这就是应
原创 2021-07-06 10:42:22
777阅读