Go语言中文网 为您找到相关结果 169

GO到底适合干什么?

LZ最近从上家公司java转到go,工作内容还是主要业务逻辑代码,感觉go写起来不是很顺畅(oop思想可能根深蒂固了,语言熟练度也是一个原因),一个Orm框架用起来就特别麻烦。。。个人感觉基于go的特性还是做一些基础的服务器组件会很有优势。。写一般的业务代码简直别扭。。没泛型、if err != nil等等.. 当然好处就是很多东西要自己实现,没有可靠的轮子。。。大家都用GO做什么呢...阅读全文

golang 使用 iota

iota是golang语言的常量计数器,只能在常量的表达式中使用。 iota在const关键字出现时将被重置为0(const内部的第一行之前),const中每新增一行常量声明将使iota计数一次(iota可理解为const语句块中的行索引)。 使用iota能简化定义,在定义枚举时很有用。 举例如下: 1、iota只能在常量的表达式中使用。 fmt.Println(iota) 编译错误: undefined: iota 2、每次 const 出现时,都会让 iota 初始化为0. const a = iota // a=0 const ( b = iota //b=0 c //c=1 ) 3、自定义类型 自增长常量经常包含一个自定义枚举类型,允许你依靠编译器完成自增设置。 type Stere...阅读全文

博文 2015-01-16 18:00:01 ghj1976

Go项目目录管理

在Go的官网文档How to Write Go Code中,已经介绍了Go的项目目录一般包含以下几个: src 包含项目的源代码文件; pkg 包含编译后生成的包/库文件; bin 包含编译后生成的可执行文件。 可以通过下面的例子来说明工程目录的组织管理。(Windows 7 64位,go version go1.3.3 windows/amd64) 1. 创建一个库文件 创建一个库文件a.go并保存在scr目录的一个子目录下面。 package myfunc import "fmt" func Afunc(str string) { fmt.Println("a.go is package mufunc.") fmt.Println(str) } 这时候目录结构如下: ...阅读全文

博文 2015-01-22 13:00:01 sincerely

go build和go install的区别

go build通过go build加上要编译的Go源文件名,我们即可得到一个可执行文件,默认情况下这个文件的名字为源文件名字去掉.go后缀。 $ go build hello.go $ lshello hello.go 当然我们也 可以通过-o选项来指定其他名字: $ go build -o mygo hello.go $ lsmygo hello.go 如果我们在go-examples目录下直接执行go build命令,后面不带文件名,我们将得到一个与目录名同名的可执行文件: $ go build $ lsgo-examples hello.go go install与build命令相比,install命令在编译源码后还会将可执行文件或库文件安装到约定的目录下。 go install编译...阅读全文

Go 语言测试(Test)、性能测试(Benchmark) 学习笔记

简介 Test Package testing provides support for automated testing of Go packages. It is intended to be used in concert with the “go test” command, which automates execution of any function of the form. testing包提供了对Go包的自动测试支持。 这是和go test 命令相呼应的功能, go test 命令会自动执行所以符合格式 func TestXXX(t *testing.T) 的函数。 Benchmark Functions of the form func BenchmarkXxx(b ...阅读全文

博文 2015-12-14 18:00:00 cchd0001

golang 的md5加密

先看实现代码: package main import ( "crypto/md5" "encoding/hex" "fmt" ) func main() { h := md5.New() h.Write([]byte("123456")) // 需要加密的字符串为 123456 cipherStr := h.Sum(nil) fmt.Println(cipherStr) fmt.Printf("%s\n", hex.EncodeToString(cipherStr)) // 输出加密结果 } 代码输入效果: 说明: Golang的加密库都放在crypto目录下,其中MD5库在crypto/md5包中,该包主要提供了New和Sum函数。 这里直接对一串字符串计算MD5。其中通过md5.New...阅读全文

博文 2015-01-29 03:00:02 ghj1976

【GoLang笔记】遍历map时的key随机化问题及解决方法

之前的一篇笔记曾分析过,Go的map在底层是用hashmap实现的。由于高效的hash函数肯定不是对key做顺序散列的,所以,与其它语言实现的hashmap类似,在使用Go语言map过程中,key-value的插入顺序与遍历map时key的访问顺序是不相同的。熟悉hashmap的同学对这个情况应该非常清楚。 所以,本文要提到的肯定不是这个,而是一个比较让人惊奇的情况,下面开始说明。 1. 通过range遍历map时,key的顺序被随机化 在golang 1.4版本中,借助关键字range对Go语言的map做遍历访问时,前后两轮遍历访问到的key的顺序居然是被随机化的! 这个现象在其它语言中是很少见的,比如C语言实现hashmap时,通常会用数组(即一段连续的内存空间)来存key,虽然key的...阅读全文

博文 2015-04-02 19:00:01 slvher

"go: missing Git command"的解决办法

"go: missing Git command"的解决办法 在使用go get 取资源包的时候出错误: ============================================================ C:\Users\Goopand\Desktop\Workspace\goWork\src>go get github.com/astaxie/beegogo: missing Git command. See http://golang.org/s/gogetcmdpackage github.com/astaxie/beego: exec: "git": executable file not foundin %PATH% ====================...阅读全文

博文 2014-11-13 15:00:01 Goopand

golang+websocket

参考资料: 0. 浅谈websocket:http://www.cnblogs.com/whthomas/p/3801147.html 1. golang版websocket源码:http://code.google.com/p/go.net/websocket 2. golang版websocket文档:http://godoc.org/golang.org/x/net/websocket#ex-Handler 3. 测试浏览器是否支持websocket地址:http://www.websocket.org/echo.html 4. 简单的golang版的websocket server:http://www.xinze.me/%E5%9F%BA%E4%BA%8Egolang%E7%9A%...阅读全文

博文 2015-07-23 03:00:00 hezhixiong

Golang的 signal

在实际项目中我们可能有下面的需求: 1、修改了配置文件后,希望在不重启进程的情况下重新加载配置文件; 2、当用 Ctrl + C 强制关闭应用后,做一些必要的处理; 这时候就需要通过信号传递来进行处理了。golang中对信号的处理主要使用os/signal包中的两个方法:一个是notify方法用来监听收到的信号;一个是 stop方法用来取消监听。 监听信号 notify方法原型 func Notify(c chan<- os.Signal, sig ...os.Signal) 第一个参数表示接收信号的管道 第二个及后面的参数表示设置要监听的信号,如果不设置表示监听所有的信号。 下面是一个非常简单地例子: package main import ( "fmt" "os" "os/signal"...阅读全文

博文 2015-02-05 03:00:01 ghj1976

Golang 中"泛型"的支持

Golang不支持一般的类似java中的标记式泛型。很多人因此而十分不满,认为没有泛型增加了很多工作量。而目前由于泛型支持的复杂性,Golang的设计和实现者并没有把这个泛型支持作为紧急需要增加的特性。但是,如果真的没有泛型,就一定不行了么?答案当然是否定的。没有泛型也可以,而且我觉得代码更简单,直接,有趣(个人观点,勿喷)。 我们这里打算以一些例子来讲解Golang中如何处理这个问题。 首先,我们看一个冒泡排序的问题。针对整型数组切片的排序。 package main import ( "fmt" ) func bubbleSort(array []int) { for i := 0; i < len(array); i++ { for j := 0; j < len(array)-i-1...阅读全文

博文 2016-08-13 02:00:08 black_OX

Alpha Go 的原理浅析(深度学习与强化学习的融合)

前言 这两天网络上被Alpha Go和李世石的围棋对决刷屏,目前Alpha Go已经2-0领先。从前年开始关注研发这套系统的DeepMind公司,一直在追终他们最新的论文。深度学习这个词随着这一事件又火了一把,可是我想说的是虽然阿尔法狗确实得益于深层神经网络的发展,但是其能超过以往的围棋AI的原因是他将深度学习和强化学习结合在一起使用,再融合传统围棋AI主要使用的蒙特卡洛树搜索方法。要知道只用深度学习的方法去解决围棋问题在几年前已经有很多人在尝试,其效果却往往还不及当前最好的围棋AI(例如:Zen,Pachi等) 去年这家公司做的最引爆世界的事情是在Arcade Learning Environment中战胜了人类专家并且在nature上也发。这个环境是为了评估各种强化学习(Reinforc...阅读全文

博文 2016-03-11 18:00:02 xcwill

golang开发windows界面

在 awesome-go 节点下有不少开发界面的库, 大部分是基于web, gtk, qt跨平台的, 也有基于sciter go绑定的go-sciter, 基于原生包装的跨平台的库ui, 只支持Windows桌面端的walk 个人倾向于后2个, 适合个人的技术栈, 试用了下ui这个库, demo比较 少就4个, 运行起来有点卡, 而且生成的可执行文件很大. 最重要的是不支持设置控件坐标(没找到), 而且开放的接口比较少. 下面对比下ui和walk代码, 就拿button控件来说. ui type Button struct { ControlBase b *C.uiButton onClicked func(*Button) } type ControlBase struct { iface...阅读全文

博文 2018-09-14 17:34:43 最近不在

Go On Android

文地址:Go, on Android作者:橙子InfinityGo 语言的高效一直让我想将之用于 Android 的开发上,很多事情,单纯从代码角度考虑,用 Go 来写会方便很多。这篇文章只是一个实例,没啥实质性的意思,只是开发时的一些记录。 我不想说如何获得 Go 的源码或是如何编译之,那些在网上到处可找,推荐直接参考 Go 语言官方网站(http://golang.org/),里面许多有价值的东西。 同样的参考官方网站所述,我们可以将 Go 环境编译为支持 arm 的,使用该环境编译出的程序,也可运行于 Android。 那么先编译 Go 本身,让它可以编译 arm 下的应用,修改一下 .bashrc 文件 在最后加上以下条目 PATH 取决于你的 Go 源码下载到哪里,不一定和我是一样...阅读全文

博文 2015-04-23 17:00:16 yangying19911113

GoAgent原理和实现(一) :基本原理介绍

GoAgent对于每一个可以登上 blogger.com 的孩纸来说也许并不陌生。出于好奇,我准备学习学习它的工作原理,并打算自己动手写一个类似的东西。当然,前提不是照抄了。我打算记录下整个学习和实现它的过程,但由于能力有限,之中难免会出现错误,希望发现的童鞋可以帮忙指正。如果即使自己没能详尽的弄明白它的编程思想和手段,自己也要写出一个可以实现它的功能的近似的东西。 开始之前,我应该感谢一下阮成雄同学。他把GoAgent介绍给了我,才让我实现了“跨过长城,走向世界”的梦想。 如果你没有听说过GoAgent,但平日里苦于无数次的“连接被重置”错误,它将是你的终极解决方案。这里,我不想介绍它的安装和使用过程,需要的同学可以参考GoAgent图文设置教程,或是在code.google.com中搜索...阅读全文

Go语言中的byte和rune

Go语言中byte和rune实质上就是uint8和int32类型。byte用来强调数据是raw data,而不是数字;而rune用来表示Unicode的code point。参考规范: uint8 the set of all unsigned 8-bit integers (0 to 255) int32 the set of all signed 32-bit integers (-2147483648 to 2147483647) byte alias for uint8 rune alias for int32 可以通过下面程序验证: package main import "fmt" func byteSlice(b []byte) []byte { return b } func...阅读全文

从面向对象的角度看Go语言与Java语言的区别

Go语言风格 GO语言是支持并发编程和内存垃圾回收的编译型静态类型语言,运行效率高,具有较强的可伸缩性(scalable)。它是为软件工程服务而进行的语言设计,强制语言规范。GO语言的面向对象编程非常简洁优雅,没有继承,隐藏的this指针等。它的面向对象是语言类型系统中的天然的一部分。整个类型系统通过接口串起来浑然一体。 Go语言与JAVA语言的区别 类型系统:JAVA中有两套完全独立的类型系统,一套是值类型系统,byte、int、boolean、char、double另一套是以object类型为根的对象类型系统,Integer,HashMap等。值类型系统希望用object类型引用,则需要装箱。而go语言中多数类型都是值语义,甚至包括一些复合类型如数组(array),结构体(struct)...阅读全文

博文 2016-04-19 09:00:01 NoraLi

golang 系统包自动填写插件

Make sure $GOPATH/bin is in your $PATH (Windows: %GOPATH%\bin goes in your %PATH%). 【保证你的golang环境正常】 Run go get -u golang.org/x/tools/cmd/goimports (you may have to install mercurial). 【通过go下载工具】 Install Sublime Text and GoSublime (or make sure you’ve got the latest update if it’s already installed). 【安装了sublime text 和 Gosublime插件】 Open the gosubli...阅读全文

博文 2015-07-23 03:00:00 zhangqingping

ubuntu下golang+mysql

[GO安装] 本来采用 sudo apt-get install golang 安装,后来发现这样装下来是go1版本,这样后面在编译go-sql-driver插件会有问题。 后来参考参考资料2中所说,从http://www.golangtc.com/download下载对应平台的包。 安装其实很简单,只要简单配置一下环境变量,在.bashrc里增加 export GOROOT=$HOME/bin/go export GOARCH=amd64 #如果是32位就是=386 export GOOS=linux export PATH=${PATH}:$GOROOT/bin export GOPATH=$HOME/devhome/golang/go_demo 然后执行: cd $GOROOT/src...阅读全文

使用Go访问MySQL的方法

使用Go访问MySQL的方法 安装MySQL驱动 go get github.com/go-sql-driver/mysql 导入mysql包 import ( "database/sql" _ "github.com/go-sql-driver/mysql" ) 连接数据库 db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)/dbname") if err != nil { panic(err.Error()) } defer db.Close() err = db.Ping() if err != nil { panic(err.Error()) } 查询 age := 27 rows, err := db.Qu...阅读全文

Go项目的目录结构说明

一、项目目录结构GoPath /bin /pkg /src project_1 project_2 ...... project_n GoPath : 相当于donet下的Solution文件夹;需在环境变量中设置,多个用分号隔开即可; bin : 存放编译后的可执行文件; pkg:存放编译后的包文件; src : 存放项目源文件; project_n : 具体项目的源代码目录,相当于donet下的Project文件夹。 示例如下图: 二、在LiteIDE中的目录结构 参考资料: http://www.tiege.me/?p=417&utm_source=rss&utm_medium=rss&utm_campaign=golang-ide-liteide http://blog.studyg...阅读全文

博文 2016-06-03 10:00:00 wangwangfei

go语言模块开发概念与cron定时事务模块的使用

参照代码: 引入模块通过import实现 结合go安装包目录: 不难发现src目录用于存放各个模块 关于cron模块的使用,只需下载源码保存至src目录下,使用时引入即可,相比linux 中的 cron,Go 实现的 cron 可以精确到秒 查看下载源码地址:https://github.com/robfig/cron 参考资料: http://blog.studygolang.com/2014/02/go_crontab/ http://www.cnblogs.com/happyframework/p/3322292.htm...阅读全文

博文 2015-09-18 03:00:01 hero-89

安装VIM8和vim-go插件

安装VIM8 下载源码,编译安装,默认会安装到/usr/local/bin下: git clone https://github.com/vim/vim.git cd vim/src make make install 如果make过程中报有关terminal的错误,并提示安装ncurses,则yum安装ncurses-devel后重新make和make install: yum install ncurses-devel 安装vim-go插件 执行如下命令安装plug.vim插件管理器和vim-go插件: curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/v...阅读全文

博文 2018-10-07 01:35:08 zxdevops

为什么Go语言在中国格外的"火"

go语言推出有几年了,似乎不温不火。但是在中国范围内,确实被关注的一塌糊涂。 这是2017年2月份TIOBE出的编程语言排名: 在拉勾网上搜索go的职位,结果有119个(2017年2月14日搜索结果),似乎还没有那么火爆: 但是在中国,很多公司,很多程序员都在谈论go语言,也就是说在中国对于go的关注异常火爆。 根据谷歌搜索的统计,如下图: The graph above shows the searches for “golang” by country on Google Trends. 外国人专门写了一篇文章,来分析为什么go在中国如此火: 《Why is Golang popular in China?》 http://herman.asia/why-is-go-popular-in...阅读全文

博文 2017-02-28 03:36:13 wangshubo1989

google go 安装经历

参考 http://golang.org/doc/install.html 参考google官方文档,并结合自己的经历,算是一半翻译,一般原创把,其中有许多不懂的地方,请高手指点 1, 设置环境变量 $GOROOT :go的根目录,一般设为$HOME/go,也可设为其他目录 $GOOS :目标操作系统目前他的选项有linux, darwin (注:Mac OS X 10.5 or 10.6)和nacl (注:Native Client, an incomplete port) $GOARCH :目标编译架构,他的选项有amd64 (64位 x86或amd64),386 (32位 x86或amd32), 和 arm (32位 ARM平台) $GOBIN(可选的):二进制代码存放的地方,如果你指...阅读全文

博文 2014-11-29 04:00:01 mn200456

Go项目目录管理

在Go的官网文档How to Write Go Code中,已经介绍了Go的项目目录一般包含以下几个: src 包含项目的源代码文件; pkg 包含编译后生成的包/库文件; bin 包含编译后生成的可执行文件。 可以通过下面的例子来说明工程目录的组织管理。(Windows 7 64位,go version go1.3.3 windows/amd64) 1. 创建一个库文件 创建一个库文件a.go并保存在scr目录的一个子目录下面。 package myfunc import "fmt" func Afunc(str string) { fmt.Println("a.go is package mufunc.") fmt.Println(str) } 这时候目录结构如下: ...阅读全文

博文 2016-06-16 01:00:01 weiyuefei

看《人民的名义》是如何利用大数据技术进行侦查反腐

最近热播的大型反腐题材剧《人民的名义》火了,大至台前幕后频频爆出的后台背景与真实故事,小至微博微信不断刷新的各类影评,甚至是一系列让人忍俊不禁的达康书记的表情包等,这部以“大尺度”人物关系、环环相扣的剧情以及演技精湛的老戏骨而著称的电视剧,受当下群众脍炙人口、喜闻乐见的程度,可略见一斑。 那么,《人民的名义》到底有多火?我们可以通过一组数据进行具体阐述说明。根据数据监测显示,自《人民的名义》3月28日首播至今,在短短不到2周的时间内,微博发帖量高达1160455,论坛话题量22338,网站21271,新闻15844,微信8646,客户端6215,博客2648,视频1438,政务1358,报刊699,外媒112。截至4月5日,全网视频播放量突破2.8亿,豆瓣评分8.7,其以2.264%的...阅读全文

go mobile 得生命周期事件

生命周期事件,就是状态从一个阶段切换成另外一个状态时触发的事件。所以我们可以看到 lifecycle.Event 的定义如下: 生命周期一共有下面四个阶段: lifecycle.StageDead, lifecycle.StageAlive, lifecycle.StageVisible, lifecycle.StageFocused, 具体定义如下图: 一个可以用来分析各个事件先后顺序的代码: // +build darwin linux package main import "log" import "golang.org/x/mobile/app" import "golang.org/x/mobile/event/lifecycle" import "golang.org/x/mo...阅读全文

BookStack V1.2 发布,增加书籍分类和用户主页等功能

BookStack,分享知识,共享智慧!知识,因分享,传承久远! BookStack是基于[Mindoc](https://gitee.com/longfei6671/godoc)开发的,为运营而生,可用于文档项目管理,也可用于开源书籍的整理并提供用户阅读,支持批量创建文档、markdown项目一键导入以及文章采集等强大便捷的功能。 ![首页1.png](http://static.bookstack.cn/projects/help/15234b6d9c2c2a4d.png "首页1.png") ## 升级日志 1\. 增加书籍分类 ![分类1.png](http://static.bookstack.cn/projects/help/15234b715f85...阅读全文

阿里云免费套餐再次升级,含云服务器、云数据库等 35+产品

2016年12月阿里云推出免费套餐,包含1核1G云服务器、1核1G云数据库等30余款核心云产品免费使用6个月; 2017年4月,阿里云免费套餐再升级,提供更多产品,更久时长的使用。 升级项包括: 1、个人用户可加199元升级为1年时长(平均16元/月,享35+产品),并将云服务器配置提升到1核2G; 2、新增企业用户专享版免费套餐,包含2核4G云服务器、2核4G云数据库等核心云产品免费使用6个月。或者可同时使用6台云服务器、云数据库产品一个月,用于搭建云端计算集群。 本次活动针对个人用户和企业用户,仍然仅限新用户申请,每个新用户限参与免费套餐活动1次。 个人用户,推荐申请免费套餐199元升级版,1核2G的配置适用更多使用场景; 企业用户,...阅读全文

Sublime text 3开发GO

http://www.sublimetext.com/3 本来一直用Sublime Text 2开发Go,最近无意中看到ST3里添加了一项功能: Added Jump Back and Jump Forward commands, available from the Goto menu 虽然ST2下也有插件能实现类似的想法,但与ST3自带的功能相比就弱爆了,ST3几乎可以无限次返回(具体返回的深度没测试过) 这个功能主要用在浏览的时候,比如: func fooA() { fooB() } func fooB() { fooC() } 那么浏览到fooA的时候,用Goto Definition去看fooB的代码,在fooB里可能继续看fooC的代码,这么几次跳转后想再次回到fooA就比较麻烦...阅读全文

博文 2015-06-18 09:07:09 varding

golang中不定参数与数组切片的区别

package main import "fmt" func main() { myfunc1(88, 42, 12, 56) //传递不定数量的参数 myfunc2([]int{88, 42, 12, 56}) //传递一个数组切片 } func myfunc1(args ...int) { //接受不定数量的参数,这些参数的类型全部是int for _, arg := range args { fmt.Println(arg) } } func myfunc2(args []int) { //传递一个数组切片 for _, arg := range args { fmt.Println(arg) } } 参考资料: 《Go语言编程》 2.5.3 不定参...阅读全文

博文 2016-02-23 03:00:00 leo8

Go语言的new函数

Go语言有一个内置的new函数,其定义如下: func new func new(Type) *Type The new built-in function allocates memory. The first argument is a type, not a value, and the value returned is a pointer to a newly allocated zero value of that type. 其输入参数是一个类型,返回是一个指向该类型内存的指针,且指针所指向的这块内存已被初始化为该类型的0值。下面例子演示了如何使用new函数: package main import ( "fmt" ) func main() { v := new(int) *...阅读全文

博文 2017-06-24 19:14:34 肖楠

生产级无服务器 PasS 平台Rainbond

好雨云帮(Rainbond)是国内首个开源的生产级无服务器PasS平台,深度整合基于[Kubernetes](https://github.com/kubernetes/kubernetes)的容器管理、多类型CI/CD应用构建与交付、多数据中心的资源管理等技术提供完整的云原生应用管理解决方案,构建出应用、基础设施之间的互联互通生态体系。 Rainbond历经超过五年的生产运营打磨和验证,形成目前理念最新、生态最完整的无服务器PasS平台。如今,我们选择开源、拥抱社区,期望吸收最好的想法和实践,进一步完善和提升云帮,让更多企业和个人用户享受&ldquo;以应用为中心&rdquo;的技术体验。 结构: ![image](https://static.oschina.net...阅读全文

请教一下,windows下如何用go调c动态库(.dll)?

linux下开发感觉没有windows下开发直观,go既然是跨平台的而且go在linux下可以调用c库,那么个人感觉在windows下肯定也可以调用,但是上网搜了很多资料只有调用kernel32.dll的例子,这个是系统的库,如何能调用自己的库呢?求大神指点,回复也可以,我的qq:810766340,或者邮箱xuxue_126@126.co...阅读全文

大规模指标储存平台Uber M3

M3  是 Uber 开源的一个基于分布式时序数据库 M3DB 构建的度量平台,可每秒聚合 5 亿个指标,并且以每秒 2000 万笔的速度持续存储这些结果。 M3 目前拥有超过 66 亿条时序数据,每秒聚合5亿个指标,并在全球范围内每秒持续存储 2000 万个指标(使用 M3DB),批量写入将每个指标持久保存到不同区域的三个副本中。它还允许工程师编写度量策略,以不同的时间长度和不同粒度对资料进行保存。这使得工程师和数据科学家能以不同的留存规则,精细和智能地存储有不同保留需求的时序数据。 基于 Uber 日益增长的度量存储工作负载的经验,M3 具备以下特性: 优化指标管道的每个部分,为工程师提供尽可能多的存储空间,以实现最少的硬件支出成本。 通过自定义压缩算法 [M3TSZ](...阅读全文

楼赛 第15期 Go语言项目挑战

**2017年9月12日 20:00正式开赛** ### 实验楼「Go语言项目挑战赛」 由 七牛云、图灵社区 和 实验楼 联合举办,9月12日20:00开赛。 3个 Go语言 相关的题目等你挑战,七牛云工程师的实际工作的问题场景等你解决。 排行榜实时更新,前十名可获得 七牛云 赞助的限量T恤和100元服务抵扣券、图灵社区 赞助的书籍以及 实验楼 的纪念水杯各一件! 参加比赛,接受我们的挑战吧! https://www.shiyanlou.com/contests/lou15 ### 比赛奖励 比赛排行榜实时更新,比赛结束后前十名个人主页获得徽章,并可得到图灵社区 、七牛云 、 实验楼 提供的奖品各一件。 成绩优异者更可获得七牛云及实验楼内...阅读全文

数据宝Top10最优配API已为您选好!

数据宝专注做您数据接口版的“右先生”,实实在在为您提供多种多样的一手直连数据,贴心定制专属折扣,配备专属的一站式服务团队。 $_$宠爱三生三世,约“惠”仅此一次!更有充值¥10000送¥800活动为您奉上~~ ※ 用户画像、精准营销、个人征信必须の~~乘机人价值评估&全国运营商详单&个人银行卡消费报告 ※ 助力020、电商平台个人信息验证、反欺诈の~~个人实名认证&手机号反套利 ※ 相亲、招聘等社交网站信息核查必须の~~学历查询&身份证照片查询 ※ 网约车、网贷等资金交易平台,核实信息、降低运营风险必备の~~银行卡四元素信息验证&手机在网时长查询&风险清单查询 ※ 请注意:以上接口均需要授权方可查询应用! $_$ 还在等什么?现在注册认证即可获享免费...阅读全文

Go学习笔记之变量和常量

1 变量 1-1 声明 在 Go 语言中声明变量使用关键字 var 例如 var int_a int; // 多数情况下分号可以省略 在声明的同时没有初始化值时,Go 会给基础类型设置默认值, int 0 int8 0 int32 0 int64 0 uint 0x0 rune 0 //rune的实际类型是 int32 byte 0x0 // byte的实际类型是 uint8 float32 0 //长度为 4 byte float64 0 //长度为 8 byte bool false string "" 声明的同时也可以赋值初始化,例如 var int_a int =1 声明同时赋值可以简单缩写为 int_a := 1 1-2 多个相同类型的声明 多个相同类型的声明可以简写为 var a...阅读全文

博文 2014-12-05 11:00:01 hnxxwyq

入职阿里的机会来了!2018阿里巴巴校园招聘季火热进行中!

导语:2018阿里巴巴校园招聘季火热来袭!技术、设计、产品、游戏等25个岗位等你来! 简历投递地址 https://campus.alibaba.com/positionList.htm 招聘流程 一、关于网申/内部推荐: 面向群体:2018届毕业生(毕业时间:2018.1.1-2018.12.31) 内推时间:7月4日至8月18日 网申时间:7月4日至8月18日 二、关于在线编程: 1. 面向人群:技术类岗位同学 2. 测验有效期:简历投递后请点击邮件链接进行在线编程测验,完成答题的同学会增加面试几率 3. 测验时间:总计30分钟(具体时长请注意查看邮件通知),一旦开始编程,请在规定的时间内完成并提交,超过时长系统将不能继续答题 4. 测验形式...阅读全文

[golang] 分布式ID生成算法Snowflake

大部分分布式系统中,对一些互斥资源通常需要一个集群唯一的ID,比如消息id,订单号等。而且很多业务需求往往要求这些ID必须具有先后顺序,以方便分页或者排序。这就要求ID具有两个特性: 全局唯一 随时间递增 Snowflake Twitter-Snowflake算法很好的解决了这种需求,它可以非常高效的生成ID,其核心思想如下(图片来自网络): snowflake-64bit.jpg 时间戳。时间戳段位共41位,单位毫秒,可以使用约70年。为了增加剩余可用期限,一般都会把起始日期尽量后移而不是直接使用1970-01-01。(ps:如果是使用1970,你的程序只能支持到2039年了) 机器id。用于区分集群内不同机器,因为Snowflake生成ID是在每台机器上进行的。一般集群中每个节点都会有一...阅读全文

博文 2017-10-19 10:04:54 king_wang

模板中插入golang数据时遇到的问题

今天在模板时想执行一条很简单的语句,然后却碰壁了,左试试右试试都不行,还是通过上网搜索才找到解决方法。 我想在模板里执行或操作的逻辑,即:“if a || b { do something }”;我试过以下几种方式都不行: 1 想在模板里执行或操作逻辑:即:if a || b { do something } 2 (错误1) {{ if .a || .b }} 3 do something 4 {{ end }} 5 (错误2) {{ if .a .b }} 6 do something 7 {{ end }} 8 (错误3) {{ if `.a .b` }} 9 do something 10 {{ end }} 11 …… 12 正确的方式竟然是: 13 {{ if or .a .b }...阅读全文

博文 2015-09-23 03:00:00 hezhixiong