E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
golang学习笔记
Golang学习笔记
:目录
转载请注明出处:https://blog.csdn.net/sublio/article/details/106480267详细目录:基础:高级类型:https://blog.csdn.net/sublio/article/details/106478300基本控制流程:https://blog.csdn.net/sublio/article/details/106478408并发:通道Chann
sublio
·
2020-08-22 13:32
GoLang
基础
Golang学习笔记
:sync.Once||sync.WaitGroup||sync.Pool
转载请注明出处:https://blog.csdn.net/sublio/article/details/106503509全系列目录:https://blog.csdn.net/sublio/article/details/106480267sync.Once||sync.WaitGroup||sync.Pool目录sync.Oncesync.WaitGroup临时对象池sync.Poolsyn
sublio
·
2020-08-22 13:32
基础
GoLang
Golang学习笔记
:原子操作
转载请注明出处:https://blog.csdn.net/sublio/article/details/106503276全系列目录:https://blog.csdn.net/sublio/article/details/106480267原子操作目录简介类型增或减Add比较并交换CAS载入Load存储Store交换Swap原子值sync/atomic.Value简介执行过程中不能被中断的操作
sublio
·
2020-08-22 13:32
基础
GoLang
golang学习笔记
1:初识
1、为什么要学习go?随着软件规模的不断扩大,诸多的学者和谷歌的开发者们在公司内部的软件开发过程中开始经历大量的挫折,在诸多问题上都不能给出令人满意的解决方案,尤其是在使用C++来开发大型的服务端软件时,情况更是不容乐观。由于二进制文件一般都是非常巨大的,因此需要耗费大量的时间在编译这些文件上,同时编程语言的设计思想也已经非常陈旧,这些情况都充分证明了现有的编程语言已不符合时下的生产环境。尽管硬件
编程老司机
·
2020-08-21 15:46
Golang学习笔记
之WEB框架(gin)基本使用
gin是Go语言写的一个web框架,API性能超强,运行速度号称较httprouter要快40倍。封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点。Github地址:https://github.com/gin-gonic/gingin的安装:gogetgithub.com/gin-gonic/ginAPIgin.Default()创建路由gin.DisableConsol
weixin_34334744
·
2020-08-20 13:46
golang学习笔记
-小试OOP
先上图简单的工厂模式packagemainimport("fmt""go_code/test/model")funcmain(){driver:=model.Driver{Name:"zhangsan",Age:20,}car:=model.NewCar("benze",120)fmt.Println("car--->",car)fmt.Println("driver--->",driver)dr
9线艺术家
·
2020-08-20 08:12
golang
golang
go
golang学习笔记
struct-接口
本想配个图,懒得找了还是得配一个嗯,的确是跟风学的golanggolang的接口同样没有显示的申明字段,只要实现了接口的所有方法(实现类型的方法定义与接口完全一致)即为实现该接口packagemainimport"fmt"//AnimalAnimaltypeAnimalinterface{Show()}//CatCattypeCatstruct{Namestring}//ShowShowfunc(
9线艺术家
·
2020-08-20 08:12
golang
Golang学习笔记
-面向对象接口封装
接口封装packageutilsimport("fmt")//定义结构体typeFamilyAccountstruct{keystringloopboolbalancefloat64moneyfloat64notestringdetailsstringflagsbool}//编写要给工厂模式的构造方法funcNewFamilyAccount()*FamilyAccount{return&Famil
炎芯随笔
·
2020-08-18 01:06
golang
Golang 库 - uuid
文章目录前言0uuid基础格式5种版本如何使用5种版本1库的介绍2官方示例测试结果函数分析生成uuid生成uuid的封装解析uuid3小结END前言我正在学习酷酷的Golang,可点此查看帖子
Golang
iotisan
·
2020-08-15 07:07
开发
-
Golang
Golang学习笔记
:锁和条件变量
转载请注明出处:https://blog.csdn.net/sublio/article/details/106503108全系列目录:https://blog.csdn.net/sublio/article/details/106480267锁与条件变量目录互斥锁读写锁条件变量参考文献互斥锁简单声明即可使用:varmutexsync.Mutexmutex.Lock()mutex.Unlock()
sublio
·
2020-08-14 04:13
基础
GoLang
golang学习笔记
使用函数的正确姿势重要概念函数签名:输入与输出参数类型列表。函数类型定义:typePrinterfunc(contentstring,strstring)(nint,errerror)typePrinterfunc(string,string)(int,error)typePrinterfunc(contentstring,idint)(nint,errerror)typePrinter1func
woniu317
·
2020-08-13 23:02
go
golang学习笔记
(二)
golang学习笔记
(二)Go异常处理new、make与管道Go多线程Go异常处理errorgo预先定义了一个error接口,包含一个字符串返回类型的函数,用于返回错误信息typeerrorinterface
歪歪梯
·
2020-08-12 00:38
go
Golang学习笔记
:语言规范之声明与作用域
类型声明包括:常量、自定义类型、变量、函数、标签、还有包声明。程序中的标识符都必须声明。块、包、文件中的标识符不能重复。Declaration=ConstDecl|TypeDecl|VarDecl.TopLevelDecl=Declaration|FunctionDecl|MethodDecl.标签作用域标签是在标签语句中使用,常用在break、continue、goto语句中。定义了标签但不使用
Schele
·
2020-08-11 06:36
Go
golang学习笔记
19 用Golang实现以太坊代币转账
golang学习笔记
19用Golang实现以太坊代币转账在以太坊区块链中,我们称代币为Token,是以太坊区块链中每个人都可以任意发行的数字资产。
weixin_34348111
·
2020-08-10 23:43
GoLang学习笔记
(二十三)strings包内函数
一、检索字符串:1、Contains函数:funcContains(s,substrstring)boolsubstr是否在s之内。functestContains(){fmt.Println(strings.Contains("seafood","foo"))//truefmt.Println(strings.Contains("seafood","bar"))//falsefmt.Printl
雷司仁
·
2020-08-10 12:41
GoLang
GoLang学习笔记
(三十三)结构体中的方法及方法的继承和重写
Go语言同时有函数和方法,方法的本质是函数,但是方法和函数又具有不同点。函数function是一段具有独立功能的代码,可以被重复多次调用,从而实现代码复用方法method是一个类的行为功能,只有该类的对象才能调用。Go语言的方法method是一种作用于特定类型变量的函数。这种特定类型的函数叫做Receiver(接收者、接收者、接收器)接收者的概念类似于传动面向对象语言中的this或者self关键字
雷司仁
·
2020-08-10 12:41
GoLang
golang学习笔记
(一)
golang学习笔记
(一)编译运行go的基本数据类型包管理自动补齐分号类型别名变量定义函数定义匿名变量字符串struct指针类型结构体函数函数变量const与iota接口嵌入类型与方法重写类型转化编译运行在安装了
歪歪梯
·
2020-08-10 11:42
go
golang学习笔记
之赋值
变量作用域a:=3fmt.Println(&a,a)//a:=3//变量重复定义的err{a:=2fmt.Println(&a,a)}输出结果:0xc42000a27830xc42000a2a82开辟新的内存空间保存变量,这涉及到变量的作用域赋值是先计算出右边的值x,y:=1,4x,y=y+3,x+4fmt.Println(x,y)结果是:75说明是先算出右边的值,然后赋值赋值退化f,err:=o
u010278923
·
2020-08-10 10:16
golang
golang学习笔记
之yaml文件处理
golang可以通过Unmarshal和Marshal函数处理json数据,当前如果你是yaml文件也可以解析,毕竟yaml和json只是不同的数据格式。先看例子:packagemainimport("fmt""log""gopkg.in/yaml.v2")vardata=`a:Easy!b:c:2d:[3,4]`typeTstruct{AstringBstruct{RenamedCint`yam
u010278923
·
2020-08-10 10:16
golang
Golang文件名命名规则 [
golang学习笔记
4]
Golang文件名命名规则今天在写项目时,突然发现,有个自己实现的示例文件redis_test.go,无法调用到文件内部的接口,理所当然就不能验证自己写的示例了,顿时一脸懵逼,查了一些资料才发现,go的一些文件需要遵循一些命名规则,如下做一些总结笔记。下面对文件名命令规则的说明:1、平台区分文件名_平台平台可选为:windows,unix,posix,plan9,darwin,bsd,linux,
幽_篁
·
2020-08-10 09:14
golang
GoLang学习笔记
(二十一)切片的长度和容量
切片的长度是切片中元素的数量切片的容量是从创建切片的索引开始的底层数组中元素的数量切片是可索引的,并且可以由len()方法获取长度,切片提供了计算容量的方法cap(),可以测量切片最长可以达到多少。切片实际的是获取数组的某一部分,len切片<=cap切片<=len数组cap()的结果决定了切片截取的注意细节varsTest01[]intfuncsliceTest01(){fmt.Printf("%
雷司仁
·
2020-08-10 08:19
GoLang
golang学习笔记
--- goroutine
packagemainimport("fmt""io""io/ioutil""net/http""os""time")funcmain(){start:=time.Now()ch:=make(chanstring)for_,url:=rangeos.Args[1:]{gofetch(url,ch)//startagoroutine}forrangeos.Args[1:]{fmt.Println(<
weixin_33671935
·
2020-08-07 20:12
Golang学习笔记
--Channel
如何定义使用定义每个通道都有与之关联的类型。此类型是允许通道传输的数据类型。不允许使用该通道传输其他类型的数据。通道的零值为nil。零通道没有任何用处,因此必须使用类似于map和slice的make来定义。packagemainimport"fmt"funcmain(){varachanint//定义channelifa==nil{fmt.Println("channelaisnil,goingt
jimzbq
·
2020-08-07 14:41
golang学习笔记
-pprof性能分析2
前言golang自带非常强大的性能分析工具,它可以在Go程序的运行中以精致的细节显示所有运行时事件,今天我们就了解一下gotooltrace的强大之处。一、概述gotooltrace显示了非常之多的信息,为了简单起见,我们先概括的看一下他显示了些什么,下面是我生成的所有trace目录,具体的如图上所示,我们逐个分析。二、详细1、viewtrace打开一个viewtrace,过程可能需要一点时间,稍
搬砖的小青年儿
·
2020-08-06 11:00
#
golang
Golang学习笔记
(三)——数据类型转换
目录一、强制类型转换二、strconv包:字符串和数值类型的相互转换1.Itoa():整型转字符串integertoalphanumeric2.Atoi():字符串转整型alphanumerictointeger3.Parse系列函数(str转其他):ParseBool()、ParseInt()、ParseUint()、ParseFloat()4.Format系列函数(其他转str):Format
杰克小麻雀
·
2020-08-04 22:58
Go
golang学习笔记
-标识符
golang学习笔记
-标识符定义一个标识符可以代表一个变量或一个类型;标识符的组成由字符A-a、下划线”_”和数字组成的字符序列标识符的第一个字符必须是字母在同一个代码块中,不允许重复声明同一个标识符一个已被声明的标识符的作用于与其直接所属的代码块的范围相同可导出标识符满足的条件标识符名称中的第一个字符必须是大写
x123089
·
2020-08-04 21:58
Golang
Golang学习笔记
数据类型和变量
数据类型先来介绍一下Golang的数据类型。布尔型bool类型代表逻辑值,有真值true和假值false两种取值。整数类型整数类型有如下几种,这些整数都是有符号的类型,它们的无符号版本是类型名前面添加u,例如uint32。类型长度int81字节int162字节int324字节int648字节除此以外,还有比较特殊的几种类型。类型长度备注byte1字节是int8的别名int和系统有关有符号整数uin
过了即是客
·
2020-08-04 18:19
golang
golang学习笔记
之引用类型与值类型
在golang中只有三种引用类型它们分别是切片slice、字典map、管道channel。其它的全部是值类型,引用类型可以简单的理解为指针类型,它们都是通过make完成初始化看下面两个例子:a:=[5]int{2,3,4,5,6}b:=ab[2]=77fmt.Println(a,b)上面定义了一个数组a,它是值类型,复制给b是copy,当b发生变化后a并不会发生任何变化,结果如下:[23456][
u010278923
·
2020-08-04 18:21
golang
golang 中 make 和 空值 的用法 [
golang学习笔记
7]
1.makegolang分配内存主要有内置函数new和make,今天我们来探究一下make有哪些玩法。map只能为slice,map,channel分配内存,并返回一个初始化的值。分别看下对应类型make的用法:slice首先来看下slice的make用法:1.make([]int,2)2.make([]int,2,4)第一种用法,指定了长度,例如make([]int,2)返回的是一个长度为2的s
幽_篁
·
2020-08-03 00:51
golang
golang学习笔记
6 beego项目路由设置
golang学习笔记
5beego项目路由设置前面我们已经创建了beego项目,而且我们也看到它已经运行起来了,那么是如何运行起来的呢?
weixin_34194702
·
2020-08-01 09:33
Golang学习笔记
(十七):len函数
len函数是Go语言中的内置函数,因此,在Go程序中可以直接调用,len()函数的定义如下:funclen(VType)int复制代码其作用是用于计算数组(包括数组指针)、切片(slice)、map、channel、字符串等数据类型的长度,注意,结构休(struct)、整型布尔等不能作为参数传给len函数。数组或数组指针:返回元素个数map和slice:元素个数channel:通道中未读的元素个数
weixin_33913377
·
2020-07-30 17:24
【
golang学习笔记
】单元测试之GoConvey
简介GoConvey类似于C/C++语言的测试框架GTest,是一款针对Golang的测试框架,可以管理和运行测试用例,同时提供了丰富的断言函数,并支持很多Web界面特性。Golang虽然自带了单元测试功能,并且在GoConvey框架诞生之前也出现了许多第三方测试框架,但没有一个测试框架像GoConvey一样能够让程序员如此简洁优雅的编写测试代码。安装在命令行输入命令:sudogogetgithu
zf766045962
·
2020-07-30 11:57
go
golang快速入门
【
golang学习笔记
】之单元测试
介绍编写单元测试规范1、文件名:_test.go结尾2、函数名:Test开头3、入参:(t*testing.T)4、内置库:testing5、报错信息:使用testing内置的方法:Errorf、Error、Fail、Failed、Fatal、Fatalf、Log、Logf等执行单元命令执行命令:gotest接下来我们举例说明,光说不写等于耍流氓。单元测试先写个函数如下:packagestudyf
zf766045962
·
2020-07-30 11:26
go
golang快速入门
golang学习笔记
-json的处理
一:json的编码使用json的Marshal()函数可以对结构中的数据进行json格式的编码。这个函数可以接受任何数据类型并且返回一个[]byte.这里需要注意的也是我踩过的一个坑就是结构体中的成员的可见性,会影响json的转换,比如typerspinfostruct{MessageintResultint}这个就是正常转化的,因为结构体中的成员都是可以见的。typerspinfostruct{
Hinatan
·
2020-07-30 09:41
学习笔记
Golang学习之从命令行读取config配置文件
Golang学习笔记
之从命令行读取配置文件注:本文为个人学习笔记,如果你看到本文有收获请给予点赞支持,如果发现错误,请告知,谢谢!
Keson丶
·
2020-07-30 07:24
Golang
Golang学习笔记
:channel
channelchannel是goroutine之间的通信机制,它可以让一个goroutine通过它给另一个goroutine发送数据,每个channel在创建的时候必须指定一个类型,指定的类型是任意的。使用内置的make函数,可以创建一个channel类型:ch:=make(chanint)发送和接受channel主要的操作有发送和接受://发送数据到channelch<-1//从channel
weixin_30483013
·
2020-07-29 06:09
Golang学习笔记
:通道Channel(以通信作为手段来共享内存)
转载请注名出处:https://blog.csdn.net/sublio/article/details/106478103全系列目录:https://blog.csdn.net/sublio/article/details/106480267通道类型:以通信作为手段来共享内存Channel(注:引用类型,零值为nil不能直接用)目录Channel(注:引用类型,零值为nil不能直接用)声明和初始
sublio
·
2020-07-29 06:24
GoLang
基础
Golang笔记 6.3.1 gRPC 使用 metadata 自定义认证
2.1客户端请求中携带metadata2.2服务端中解析metadata3helloworld示例修改3.1客户端3.2服务端3.3运行效果4小结END前言我正在学习酷酷的Golang,可点此查看帖子
Golang
iotisan
·
2020-07-29 05:02
开发
-
Golang
golang学习笔记
-gin中间件
简述gin中间件类似java的拦截器,通过中间件可以在处理具体的route请求时,提前做一些业务。比如用户有效性的校验,特定日志格式的打印,错误日志的打印等等。gin的中间件大致可以分为两类,全局中间件和路由中间件,下面记录gin的中间件学习过程中的一些问题。一、全局中间件1.默认中间件全局中间件作用于所有的路由上,所有的路由请求都需要经过这些全局中间件。gin本身提供了一些基础的中间件:func
搬砖的小青年儿
·
2020-07-28 23:52
#
golang
golang
gin
中间件
【
Golang学习笔记
】入门:环境变量与Package
Golang入门学习环境变量Golang的环境变量有GOROOT和GOPATHGOROOTGOROOT是Golang的安装路径,以mac为例,通过Homebrew安装好的Golang之后,可以配置局部环境变量。exportGOROOT=/usr/local/goGOPATHGOPATH是作为编译后二进制的存放目的地和import包时的搜索路径,也就是自己创建Golang项目的工作目录。GOPATH
LvJC
·
2020-07-27 12:00
golang学习笔记
-基础篇(持续更新……)
一、零碎知识点脚手架1)本地godoc文档在cmd中执行命令godoc-http=:6060即可在本地的6060端口查看文档,和访问官网一样的。如下:2.gotest1)gotest-v.\example_test.go执行用例,-v表示显示执行的结果,以下加v和不加v:2)//output二、面试知识点基础知识点1)new和make的区别new内建函数,初始化一个指向类型的指针(*T),传递给n
搬砖的小青年儿
·
2020-07-16 05:44
#
golang
golang学习笔记
-golang调用c实现的.so接口细节
目的之前有一篇关于在windows平台下golang调用dll的具体实现,列举了常见的几种参数传递方式,本篇文章就针对在linux平台下使用cgo调用c实现的.so的一些具体的方式。比如值传递、参数传递、指针等等的一些使用。环境:centos7.6.18编译环境:go1.11.4linux/amd64、4.8.520150623(RedHat4.8.5-36)(GCC)一、动态库的实现动态库实现了
搬砖的小青年儿
·
2020-07-16 05:44
#
golang
golang学习笔记
-协程详解
一、进程,线程和协程1、概念的区别进程、线程,都是由内核进行调度,有CPU时间片的概念,进行抢占式调度(有多种调度算法)协程(用户级线程),这是对内核透明的,也就是系统并不知道有协程的存在,是完全由用户自己的程序进行调度的,因为是由用户程序自己控制,那么就很难像抢占式调度那样做到强制的CPU控制权切换到其他进程/线程,通常只能进行协作式调度,需要协程自己主动把控制权转让出去之后,其他协程才能被执行
搬砖的小青年儿
·
2020-07-16 05:12
#
golang
Golang学习笔记
08 链表
链表(Linkedlist)是一种常见数据结构,但并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针。由于不必须按顺序存储,链表在插入的时候可以达到O(1),比顺序表快得多,但是查找一个节点或者访问特定编号的节点则需要O(n)的时间。Go语言的container包中,目前有heap,list,ring三种数据结构。Heap堆(可实现最大堆和最小堆)List双向链表Ring环形链表链
panxiang162497
·
2020-07-16 04:29
从Python到
Golang学习笔记
从本科学过C/C++和java,但是实际项目中用的多的是python.因此python深刻影响了我的编程思维,从python转到Go,让我总结了一些学习笔记.静态/动态如果你在python之前没有C或JAVA等静态语言的代码量积累,接触go之后,编程习惯上最大的各种不同基本都可以归根于动态语言与静态语言的区别.简单来说,两门语言各自的编译解释的方式不同,造成了编程时思维的不同.python是一行一
chrispink_yang
·
2020-07-16 03:49
Go
python学习笔记
Golang学习笔记
(三):Windows下Go Micro微服务开发环境搭建以及跨过的坑
Golang学习笔记
(三):Windows下GoMicro微服务开发环境搭建以及跨过的坑1概述2安装go(已安装的略过)3安装Git、protoc、consul3.1安装git(已安装的略过)3.2安装
飛龍~~
·
2020-07-15 23:46
编程开发
#Golang
Golang学习笔记
--三种读文件的方式
Golang中读取文件大概有三种方法,分别为:通过原生态io包中的read方法进行读取通过io/ioutil包提供的read方法进行读取通过bufio包提供的read方法进行读取通过下面代码我们来学习和对比下三种方式:packagemainimport("os""io""bufio""io/ioutil""time""log")funcreadCommon(pathstring){file,err
cbmljs
·
2020-07-15 21:47
Golang
golang学习
Golang学习笔记
教程day07-08笔记day06-05一、初识Golang1.1环境安装1.1.1安装包下载Go安装包下载网址:https://golang.org/dl/这里使用msi安装版,比较方便千万不要在安装路径中出现中文,一路Next//可以查看是否安装成功goven1.1.2Go模块代理设置打开终端并执行goenv-wGOPROXY=https://goproxy.cn,direct还有一个代理地址
YeSilin
·
2020-07-15 19:12
golang
golang学习笔记
(二)
workerpool(goroutine池):Go语言中的goroutine虽然相对于系统线程来说比较轻量级,但是在高并发量下的goroutine频繁创建和销毁对于性能损耗以及GC来说压力也不小。充分将goroutine复用,减少goroutine的创建/销毁的性能损耗,这便是grpool对goroutine进行池化封装的目的。例如,针对于100W个执行任务,使用goroutine的话需要不停创建
YuNansen
·
2020-07-15 16:29
golang
Golang学习笔记
:常见问题
Golang学习笔记
:常见问题标签(空格分隔):golang参考GolangFrequentlyAskedQuestions,很好的参考文档,理解Golang必读。
u2takey
·
2020-07-15 15:28
golang
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他