51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#golang
告别GOPATH,快速使用 go mod(Golang包管理工具)
如果你还在使用GOPATH模式来开发Golang程序,那么你可以参考本文来告别GOPATH,并带给你一个方便的包管理工具。关于gomod的说明和简单使用,可以参考:1、Go1.1.1新功能module的介绍及使用2、IntroductiontoGoModules3、Go1.11Modules官方说明文档使用gomod管...
代码星球
·
2020-10-02
告别
GOPATH
快速
使用
go
Golang中基础的命令行模块urfave/cli
前言相信只要部署过线上服务,都知道启动参数一定是必不可少的,当你在不同的网络、硬件、软件环境下去启动一个服务的时候,总会有一些启动参数是不确定的,这时候就需要通过命令行模块去解析这些参数,urfave/cli是Golang中一个简单实用的命令行工具。安装通过gogetgithub.com/urfave/cli命令即可完...
代码星球
·
2020-10-02
Golang
基础
命令行
模块
urfave
Golang的一个CLI框架
因为机缘巧合,因为希望能在VPS中使用百度网盘,了解到了一个开源的项目BaiduPCS-Go,可以用来直接存取访问百度网盘,做的相当不错而且看ISSUES,作者可能还是个学生,很强的样子。稍微看了下代码,发现了一个很不错的用来写命令行程序CLI的框架,也是在Github上开源的,因为Golang主要是用来写这个的,所以...
代码星球
·
2020-10-02
Golang
一个
CLI
框架
Golang- import 导入包的几种方式:点,别名与下划线
包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import( "fmt" ) 然后在代...
代码星球
·
2020-10-02
Golang-
import
导入
几种
方式
Golang 数组和切片
数组是类型相同的元素的集合。例如,整数5,8,9,79,76的集合就构成了一个数组。Go不允许在数组中混合使用不同类型的元素(比如整数和字符串)。varvariable_name[SIZE]variable_type有很多声明数组的方式,让我们一个一个地介绍。packagemainimport("fmt")funcma...
代码星球
·
2020-10-02
Golang
数组
切片
golang depth read map
Foreword: Ioptimizedandimprovedthebelowsolution,andreleaseditasalibraryhere: github.com/icza/dyno.Thecleanestwaywouldbetocreatepredefinedtypes(structu...
代码星球
·
2020-10-02
golang
depth
read
map
golang 多级json转map
funcmain(){jsonStr:=`{"isSchemaConforming":true,"schemaVersion":0,"unknown.0":[{"email_address":"test1@uber.com"},{"email_address":"test2@uber.com"}]}`dynamic:=...
代码星球
·
2020-10-02
golang
多级
json
map
GoLang中 json、map、struct 之间的相互转化
1.golang中json转struct <1.使用json.Unmarshal时,结构体的每一项必须是导出项(importfield)。也就是说结构体的key对应的首字母必须为大写。请看下面的例子:packagecommontestimport("testing""encoding/json")typePer...
代码星球
·
2020-10-02
GoLang
json
map
struct
间的
golang 数据类型之间的转换
一、基本数据类型之间的转换1、string到int int,err:=strconv.Atoi(string) 2、string到int64 int64, err := strconv.ParseInt(string,&nb...
代码星球
·
2020-10-02
golang
数据
类型
间的
转换
Golang中用interface{}接收任何参数与强转
函数的传值中,interface{}是可以传任意参数的,就像java的object那样。下面上我第一次想当然写的**错误**代码packagemainfuncmain(){Any(2)Any("666")}funcAny(vinterface{}){v1:=int(v)println(v1)}我只是想它能通过编译而已,...
代码星球
·
2020-10-02
Golang
中用
interface
接收
任何
golang struct结构体初始化的几种方式
typeUserstruct{Idint`json:"id"orm:"auto"`//用户名Usernamestring`json:"username"`}funcmain(){//值类型u1:=models.User{}varu2models.User//指针类型u3:=new(models.User)u4:=&am...
代码星球
·
2020-10-02
golang
struct
结构
初始化
几种
golang单例模式
1、定义:单例对象的类必须保证只有一个实例存在,全局有唯一接口访问。2、分类: 懒汉方式:指全局的单例实例在第一次被使用时构建。饿汉方式:指全局的单例实例在类装载时构建。3、实现: (1)懒汉方式 1typesingletonstruct{}2varins*singleton3funcGetIns()*s...
代码星球
·
2020-10-02
golang
单例
模式
Golang 单例模式 singleton pattern
在Java中,单例模式的实现主要依靠类中的静态字段。在Go语言中,没有静态类成员,所以我们使用的包访问机制和函数来提供类似的功能。来看下下面的例子:packagesingleton &nbs...
代码星球
·
2020-10-02
Golang
单例
模式
singleton
pattern
golang可见性规则(公有与私有,访问权限)
Go语言没有像其它语言一样有public、protected、private等访问控制修饰符,它是通过字母大小写来控制可见性的,如果定义的常量、变量、类型、接口、结构、函数等的名称是大写字母开头表示能被其它包访问或调用(相当于public),非大写开头就只能在包内使用(相当于priv...
代码星球
·
2020-10-02
golang
可见
规则
公有
私有
golang init方法和main方法初始化顺序
init()和main()方法是golang默认的两个方法,不需要我们调用,程序执行会自动寻找项目中的这俩方法。现在我们就讲一种通用的情况:main包下导入了init2包而在init2包下又导入了init3包,三个包下都有自己的init方法,初始化的顺序又是怎么的呢?先看一段代码://demo_init1.gopack...
代码星球
·
2020-10-02
方法
golang
init
main
初始化
首页
上一页
...
5
6
7
8
9
...
下一页
尾页
按字母分类:
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
其他