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

基于Go的D-Bus框架(一)

CSDN开源夏令营已经过去十多天了,我的项目名称是“基于golang的dbus框架”,导师是Deepin的夏彬老师。这个项目吸引我的主要有两点:第一是因为我对Linux桌面比较感兴趣,通过完成这个项目可以了解Linux桌面的许多内部机制;第二是因为从我了解的知识来看,Go本来是为系统编程而生的,把它用在Linux桌面上十分有趣。 其实这次的开源夏令营并不能算是一个独立的项目,因为我的工作是在原有go-dbus代码的基础上完善使用体验,不过对我来说,要学习的东西还是很多的。过去的十几天我都在了解Go和D-Bus相关的知识,和导师沟通具体的方案。目前的工作目标主要是实现函数参数和结构体字段导出功能,希望能在七月份完成这个目标。 继续努力...阅读全文

博文 2016-02-14 18:00:02 mathmonkey

用Google看世界,妙用引擎“Index of”

网上有许多令人心动的共享软件,可惜的是它们或多或少都存在各种限制,对于我等贫苦一族来说,面对昂贵的注册费用只能望而却步,而且支付起来也不太方便(特别是国外的共享软件)。现在,只要利用Google强大的搜索功能,再配合一定的搜索技巧就会让你有意外的发现。 打开Google的搜索页面后,在搜索栏内填上你要搜索的软件名称、空格,并在后面加上“94fbr”的搜索代码(例如:WinZIP 94fbr),单击“搜索”按钮后你会看到所要的东西了。但该方法也并不是万能的,当没有找到合适的结果,则不妨再试试输入“软件名称 crack or sn or 破解”,一般都能找到了。 首先打开Google,在关键词输入框中输入index of lib,选择“搜索简体中文网页”选项,回车搜索,得到了一些网页,不要以为这...阅读全文

博文 2015-01-28 11:00:02 郑光宗

Golang自定义包总结

近日在学习Golang的自定义包的创建方式,产生了一些经验,因此以这篇文章作为记录。 我们通过import语句将自定义包加入到我们项目main函数中,import语句后面的参数应该是文件夹的名称,和自定义包的package的名称或者自定义包里面的文件名称没有关系,例如文件的结构目录如下: main.go的源码: package main import "fmt" import "foo" func main() { bar.Abc() fmt.Print("This is main\n") } foo/test.go的源码: package bar import "fmt" func Abc() { fmt.Print("This is test print\n") } 上面的代码是顺利通过...阅读全文

【互联网早报】2017.11.28

## 国内新闻 1.用游戏化教学实现“零成本”获客,「编玩边学」获数千万元Pre-A轮融资 http://36kr.com/p/5104910.html 2.21个月之后,聚美优品宣布撤回私有化,股价上涨13% http://www.donews.com/news/detail/3/2976627.html 3.十分到家获国美1.05亿投资 并达成战略合作 http://www.pintu360.com/a40418.html 4.支付宝推免押金出海 芝麻分700以上可境外免押租车 http://www.donews.com/news/detail/3/2976616.html 5.一嗨租车接到私有化要约 较上周收盘价溢...阅读全文

go语言开发证券实时行情转码接口(多个坑)

朋友给了一个c++的实时行情接口,其中实时分笔成交的结构体如下: 1 typedef struct tagStockReport 2 { 3 WORD wDataSize; //数据长度 4 WORD wChecked; //数据校验 5 6 char szCode[STOCKCODESIZE]; //股票代码,以'\0'结尾 7 char szName[STOCKNAMESIZE]; //股票名称,以'\0'结尾 8 9 int nTradingUnit; //交易单位(每手多少股) 10 11 long ltime; // UCT 12 13 float fLastClose; // 昨收 14 float fOpen; // 今开 15 float fHigh; // 最高 16 fl...阅读全文

博文 2015-07-04 03:00:11 wangyanlb

Golong语言学习--Mac下搭建go语言开发环境(学习摘抄)

Go语言是Google内部主推的语言,它作为一门全新的静态类型开发语言,与当前的开发语言相比具有许多令人兴奋不已的新特性。专门针对多处理器系统的应用程序编程进行了优化,使用go语言完全可以媲美c、c++的速度,而且更加安全、简洁,支持并行进程。 以下是go语言的主要特性: 1、自动垃圾回收 2、更丰富的内置类型 3、函数多反回值 4、错误处理 5、匿名函数和闭包 6、类型和接口 7、并发编程 8、反射 9、语言交互性 Mac开发环境搭建 以上基本都属废话,搭建开发环境尽快开启编程之旅才是王道,笔者使用的是mac系统,因此介绍下mac下golang的环境搭建。 1、安装Golang的SDK google官网被墙下载地址如下: http://www.golangtc.com/download ,...阅读全文

go语言开发证券实时行情转码接口(多个坑)

朋友给了一个c++的实时行情接口,其中实时分笔成交的结构体如下 ```go typedef struct tagStockReport { WORD wDataSize; //数据长度 WORD wChecked; //数据校验 char szCode[STOCKCODESIZE]; //股票代码,以'\0'结尾 char szName[STOCKNAMESIZE]; //股票名称,以'\0'结尾 int nTradingUnit; //交易单位(每手多少股) long ltime; // UCT float fLastClose; // 昨收 float fOpen...阅读全文

Golang web开发目录结构说明

通常开发项目开发时目录结构可以随意设计,但好的目录结构能让代码显得更加清晰。 Golang web 项目通用目录结构说明: projectName # 项目名称 |-- app # 应用程序目录 |---- controllers # 控制器,入参校验 |---- middleware # 中间件 |---- routers # 路由 |---- services # 业务逻辑处理 |-- config # 配置文件 |-- dao # 数据库访问 |-- models # 数据模型 |-- storage #存储 |---- cache # 缓存 |---- logs # 日志 |-- main.go # 程序入...阅读全文

博文 2018-11-27 23:34:39 野尘lxw

阿里云OSS归档存储类型单价下调 45%

摘要: 7月21日起,阿里云对象存储OSS归档存储类型存储单价下调45%,归档解冻(Restore)时间优化到1分钟内 7月21日起,阿里云对象存储OSS归档存储类型(OSS Archive)存储单价下调45%,最短存储周期调整到60天,归档解冻(Restore)时间降低到1分钟以内,调整方案如下: 调整项 调整前 调整后 按量付费单价 0.06元/GB/月 0.033元/GB/月 最小存储周期 30天 60天 归档解冻时间 1~4小时 1分钟内 OSS有三种存储类型:标准存储类型 Standard、低频访问存储类型IA、归档存储类型Archive。OSS 归档存储类型(OSS Archive)适用于各类需要长期保存的数据:医疗影像、科研数据、金融数据、视频素材等。此类数...阅读全文

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...阅读全文

8 款不容错过的创意 Android 库

随着 Android 开发走向成熟,每天都会涌现出各种各样与 Android 相关的开发工具,但是我们每天使用的各类库总是不可或缺的。这里,小编向大家推荐一些目前码云上比较具有创意的 Android 库,希望方便大家能够做出更酷更好玩的产品。当然,如果你很喜欢以下提到的库,别忘了分享给其他人哦。1. 项目名称:智能下拉刷新框架 SmartRefreshLayout 项目简介:正如名字所说,SmartRefreshLayout 是一个“聪明”或者“智能”的下拉刷新布局,由于它的“智能”,它不只是支持所有的 View,还支持多层嵌套的视图结构。它继承自 ViewGroup 而不是 FrameLayout 或 LinearLayout,提高了性能。 也吸取了现在流行的各种刷新布局的优点,包括谷歌官...阅读全文

博文 2017-10-24 01:04:52 码云Gitee

Go 语言编程

【课程名称】Go 语言编程 【课程时间】2014年7月30日(周三) 20:50 - 22:00 【课程安排】20:50—21:00 通过邮件地址登录网络课堂 21:00—22:00 主题演讲(徐立)与QA PS:课程咨询请加入QQ群:CSDN技术交流 群号是303806405 课程名称:Go 语言编程 课程大纲: - 为什么我们需要一门新语言 - Go 语言的前世今生 - Hello world - Go 特性介绍 - Go 基本数据类型 - 控制语句 - 函数 - 闭包 - 错误处理 - 结构体 - 面向对象 - 接口 - Goroutines - Channels - Select - Timeouts - Non-Blocking Channel - Mutexes - 文件操作 -...阅读全文

程序员专用的日报、周报、月报、季报自动生成器!

#### 快速生成日报、周报、月报、季报 支持 windows、mac、linux #### 下载使用 [windows](https://github.com/yurencloud/daily/releases/download/v2.0.0/daily-windows.tar.gz) | [mac](https://github.com/yurencloud/daily/releases/download/v2.0.0/daily-mac.tar.gz) | [linux](https://github.com/yurencloud/daily/releases/download/v2.0.0/daily-linux.tar.gz) #### 更新日志 1. 去除Merge日志 2. 支...阅读全文

博文 2019-08-27 12:10:09 mackwang

Go 模板引擎驱动的 IFTTTBeehive-go

Beehive 是由 Go 模板引擎驱动的开源 IFTTT,一个灵活的事件和代理系统。它允许你创建自己的代理,执行由事件和过滤器触发的自动化任务。 ![image](https://static.oschina.net/uploads/space/2017/0220/105754_Mgvo_2903254.png) 功能举例: 可在 Tumblr 博客上重新发布 tweet 将传入的聊天消息转发到电子邮件帐户 温度低于某个值时,自动打开加热系统 运行 IRC bot,让你在 Jenkins CI 上触发构建 可控制 Hue 照明系统 当股票价格过低时提示通...阅读全文

静态博客生成器 TitanPages

TitanPages是一个静态博客生成器, 可以配合githubpages轻松的搭建自己的博客。 地址:[https://github.com/qibin0506/TitanPages](https://github.com/qibin0506/TitanPages) 展示网站请转到: https://qibin0506.github.io/ 如何使用 step 1. 下载源码编译源码(linux用户, 可以直接下载tt文件;windows用户可直接下载tt.zip解压使用) step 2. 创建文件, 在你的工作空间用命令行运行以下命令: tt -type create -file 你的文件名称 例如: tt -ty...阅读全文

一个logger代码,大家帮忙指正

刚上手golang的时候看log库,为了练手就写了个logger库自己用 主要是设定几个日志级别,然后可以按照大小轮转日志,并限定日志个数。 ####模拟linux的syslog轮转xxx.log.1 xxx.log.2 .... 这样 ####希望大家帮忙看看,有什么问题,谢谢 ####logger.go package logger import ( "fmt" "os" "sync" "path/filepath" "strings" "strconv" "time" "runtime" ) ...阅读全文

beego使用 bee工具是啥一

以前做过C 做过java 基本都是现学现用,感觉变成语言都是大同小异的,直到接触golang 看了1个星期,了解下基础语法之后,第一天使用golang时候 特别蹩脚,总是敲错,慢慢使用使用之后,c java 都忘了,声明变量的时候总是:= ,看来陷入到golang世界里面了,跳不出来,因为学历低,文笔不好,大家别建议,我会尽量把我知道说出来,大家一起研究。 先说说 bee是啥,很多时候bee 跟 beego总被弄混,bee是一个开发工具,挺方便的, bee new 项目名称(创建项目) bee run 项目名称 (运行项目)只要你改动代码了,他会自动执行编译运行项目 一般我最多就用这两个。 beego 是框架源码,通过go get 下载下来就好...阅读全文

博文 2018-08-17 17:17:14 dai1512

Golang高性能json包:easyjson

简介 easyjson是什么呢? 根据官网介绍,easyjson是提供高效快速且易用的结构体structs<-->json转换包。easyjson并没有使用反射方式实现,所以性能比其他的json包该4-5倍,比golang 自带的json包快2-3倍。 easyjson目标是维持生成去代码简单,以致于它可以轻松地进行优化或固定。 安装 go get -u github.com/mailru/easyjson/ go install github.com/mailru/easyjson/easyjson or go build -o easyjson github.com/mailru/easyjson/easyjson 验证是否安装成功。 $ easyjson Usage of D:\Cod...阅读全文

博文 2017-08-24 12:33:11 梦朝思夕

杂谈小事——又到一年年底

IZONE女团(好喜欢他们的出道作品La Vie en Rose 步入年尾,正值总结过往、诉诉心事的时候,今年虽有些许惊喜开心之事,但总体还是不如意。从小到大,我都是勇于尝试新东西,但又偏向保守的性格,凡事抱有理想,但也接受现实。 去年大学毕业,校招拿了5个offer,最终选择了在一家央企做程序员(听说吃香喝辣,每天四点半下班,然而事实。。。),组里人相处得很nice,平常工作比较充实,公司整体内部人际关系比较复杂,但组里人都比较耿直友善,是我的良师益友。但是我不喜欢公司的技术氛围,IT在公司的地位不高,这也跟公司的战略定位有关,毕竟我们不是IT科技公司。 所以试用期满之后,我就动了liu的念头,以前校招认识的HR内推我去他们公司,感觉我都是刷脸过的,不过最后还是没去。一是薪酬跟原来基本没变...阅读全文

博文 2018-12-17 23:34:44 小汉同学

Golang 下的微服务 - 第 7 部分 - Terraform a Cloud

在之前的文章中,我们简要介绍了用户界面和Web客户端以及如何使用微工具包rpc代理与我们新创建的rpc服务进行交互。 本文将讨论如何创建云环境来托管我们的服务。 我们将使用 Terraform 在 Google Cloud 平台上构建我们的云群集。这应该是一篇相当短的文章,但它也很重要。 ## 为什么选择 Terraform? 我已经使用了几种不同的云供应解决方案,但对我而言,Hashicorps Terraform 感觉最容易使用并且得到最好的支持。近年来出现了一个术语:'基础设施作为代码'。为什么你想要你的基础设施作为代码?那么,基础设施很复杂,它描述了很多移动部件。跟踪基础架构的变更和版本控制变更也很重要。 Terraform 完美地做到了这一点。他们实际上已经创建了自己的DSL(域特...阅读全文

博文 2018-04-14 17:29:03 zhangyang9

Golang实现Llog日志

Golang实现Llog日志 --------------------------- 一直想找个方式来练练手,在看一些开源项目时看日志相关的,就自己也写了一个来练习Golang。 源码已经放在 Github 上了,先贴链接 链接地址: https://github.com/LvanNeo/llog Git clone 地址: https://github.com/LvanNeo/llog.git 现在大概说一下 Llog实现功能: 1.日志分为7个级别,如下: ALL DEBUG INFO WARN ERROR FATAL OFF 2.支持输出日志到控制台及文件。 3.每个级别支持两种写日志函数:字符串默认拼接和自定义格式拼接。 4.在等于或高于指定日志输出等级时才进行字符串拼接。 5.支持...阅读全文

博文 2015-06-17 20:02:35 LvanNeo

Golang file 操作

概述 这里主要简单介绍了一下在 Go 中,file 的操作。 image 简单的分为:读,写,其他,三部分 首先先说其他部分(创建,截取,复制,下载,hash) 我自己定义了一个检查错误的方法,很多地方会用到, 非常简单,如下: func check(err error){ if err != nil { panic(err) } } 创建 newfile, err := os.Create(writerfilename) // 给定一个文件名称 check(err) 会调用 os 包的 Create 方法,给定一个文件名称即可。 截取 func truncatefile() { infor, _ := os.Stat(writerfilename) // 可获取文件的信息 fmt.Prin...阅读全文

博文 2018-12-27 23:34:41 Kare

golang 爬取教务系统的成绩 goquery的使用

const ( login_url string="你的网页"//登陆页 post_url string="你的URL"//跳转页(隐藏路由) main_url string="你的URL"//进入学生专区页 score_url string="你的URL"//成绩页面 creit_url string="你的URL" ) func Login(id string,password string,kksj string,xsfs string) (interface{} interface{},interface{},interface{}){ course_url := "http://jwcxxcx.ccsu.cn/jwxt/tkglAction.d...阅读全文

分布式文件服务 gmfs

golang 基于 [gridFs](http://www.oschina.net/p/gridfs) 的分布式文件服务。 支持:    1、POST GET 上传    2、图片大小控制    3、文件下载,秒传,转正处理    等 golang 基于 gridFs 的分布式文件服务 # Window 启动 mongodb 命令: mongod.exe --dbpath "C:\Program Files\MongoDB\data" # giraffe 启动: go run giraffe start # api 说明 code        响应编码 1000        正常消息 1001        异常消息 1002  ...阅读全文

OS X 10.11搭建go语言1.5.1开发环境

1、安装Golang的SDKhttp://golang.org ,下载最新的安装包,之后双击安装即可。某此同学国内打不开的。。。我只想说,学谷歌的东西,自己想个好点办法吧。。。你懂的 安装完成之后,打开终端,输入go、或者go version(查看安装版本)出现如下信息即表示安装成功: $ go version go version go1.5.1 darwin/amd64 2、配置环境变量安装完sdk之后接下来便是配置环境变量了,打开终端输入cd ~ 进入用户主目录,之后输入ls -all命令查看是否存在.bash_profile 文件,存在既使用vim .bash_profile打开并编辑该文件。根据自己实际情况,内容如下: export GOPATH=/Users/lvtao/Docu...阅读全文

GOOGLE的go语言在恶意程序中的使用

自:http://www.symantec.com/connect/blogs/malware-uses-google-go-language 我找到的样本: 公司: GalaxyNexusRoot 文件版本: 3.02.2011 内部名称: GalaxyNxRoot 源文件名: GalaxyNxRoot.exe 产品名称: GalaxySNxRoot 产品版本: 3.02.2011 Designed in 2007 and introduced in late 2009, the Go programming language developed by Google has been gaining momentum the past three years. It is now bein...阅读全文

博文 2014-10-10 14:00:01 xiaocaiju

Hello Go

学一门语言,都是从”Hello world”开始的,现在来写下Go版的Hello Go。在此说明下,因为学习Go这门语言,有的时候在家里,有的时候在公司,所以开发环境有在win7下的,也有在ubuntu下的。 在上一篇,我已经安装好了GO及其开发环境看这边,现在打开Eclipse,New一个Go Project,项目名称取名为HelloGo,目录结构如下: 接着,新建一个go文件 然后输入以下代码,运行: package main import ( "fmt" ) func main() { fmt.Println("Hello Go!"); } 运行结果就会在控制台打印出”Hello Go!”了。 接下来,我们简单的来了解下代码。首先package main告诉我们当前文件属于哪个包,而包...阅读全文

博文 2015-02-14 14:00:00 a631855639

Golang - 文件夹遍历

文件夹遍历可以使用filepath.Walk(root string, walkFn filepath.WalkFunc) error来实现,非常方便,root可以是文件夹的绝对路径也可以是文件的绝对路径,但是通常使用文件夹,对文件来说,遍历没有意义。 新建文件traversalFolder.go // traversalFolder.go package main import ( "fmt" "os" "path/filepath" ) func walkFunc(path string, info os.FileInfo, err error) error { if info == nil { // 文件名称超过限定长度等其他问题也会导致info == nil // 如果此时retur...阅读全文

博文 2017-03-05 19:58:44 莫尛莫

m3u文件转pls文件(go语言实现)

m3u是一种文件格式,类似于下: #EXTINF:,CCTV 1 mms://live.cctv.com/cctv_live1 #EXTINF:,CCTV 2 mms://live.cctv.com/live12 比如第一行是#EXTINF:,CCTV 1,那么用逗号隔开的第2个字符串就是文件名称;而第二行则是文件路径 对应的pls文件如下: [playlist] NumberOfEntries=116 File1=mms://live.cctv.com/cctv_live1 Title1=CCTV 1 File2=mms://live.cctv.com/live12 Title2=CCTV 2 它会指明总共有多少个个文件,文件名和文件路径(以key=val这种形式展示) 下面就是利用程序将...阅读全文

博文 2016-02-16 21:00:02 rongyongfeikai2

log4go日志分级输出

//@description 调试日志输出(各级日志采用隔离方式)依赖loggor //@author hanse //@data 2017-04-10 09:31 初稿 // 2017-05-04 21:31 调试 // 2017-05-17 21:31 增加调试模式,大小分割调试OK // 2017-05-25 21:31 修复之前日志文件名称错误 package log4go import ( "log" "runtime/debug" "util/loggor" ) const ( _TABLE_ = "\t" //日志文件行分隔符 ) const ( LEVER_UNKNOW = 0 LEVER_DEBUG = 1 LEVER_INFO = 2 LEVER_WARN = 3 LEV...阅读全文

博文 2017-05-25 04:59:55 hansegod

Golang——测试与调试

测试源码文件的主名称通常已被测试源码文件的名字作为开头,文件名必须以xx_test.go结尾,例如我们的被测试源码文件名称是demo.go 那么我们测试源码文件名称应该是demo_test.go 功能测试test 2、测试方法必须是Test[^a-z]开头 3、测试方法参数必须 t *testing.T eg: import "testing" func TestFoo(t *testing.T) { t.Log("test") } 基准测试benchmark 对于性能测试函数来说,其名称必须以Benchmark为前缀,并且唯一参数的类型必须是*testing.B类型的。 import "testing" func BenchmarkFoo(t *testing.B) { t.Log("Be...阅读全文

博文 2019-04-03 22:34:40 羊羽share

Django 使用多个数据库

在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接。 参考:http://blog.csdn.net/songfreeman/article/details/70229839 1. 修改项目的 settings 配置 在 settings.py 中配置需要连接的多个数据库连接串 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }, 'ora1': { # 配置第二个数据库节点名称 'ENGINE': 'django.db.backend...阅读全文

博文 2019-03-11 18:34:41 51reboot

静态博客生成器 TitanPages

TitanPages是一个静态博客生成器, 可以配合githubpages轻松的搭建自己的博客。 #### 展示网站请转到: [https://qibin0506.github.io/](https://qibin0506.github.io/) ### [](https://github.com/qibin0506/TitanPages/blob/master/README.md#如何使用)如何使用 #### [](https://github.com/qibin0506/TitanPages/blob/master/README.md#step-1)step 1.     下载源码编译源码(linux用户, 可以直接下载tt文件;windows用户可直接下载tt.z...阅读全文

golang 上传文件到php

GO上传文件给PHP,第一篇文章里面少了个request.Header.Set(“Content-Type”, formcontenttype) 希望能够帮助别人 func upimgAction(imgurl string, url string) { path := imgurl extraParams := map[string]string{ "param1": "1", "param2": "2", "param3": "3", } request, err := newfileUploadRequest(url, extraParams, "Filedata", path)//Filedata文件名称 if err != nil { log.Error(err) } //fmt....阅读全文

博文 2016-04-18 16:00:02 mimi886

【GO语言】文件操作例子

最近由于学习GO语言,所以把python实现的一个脚本,用GO语言实现,来练习文件操作,正则表达式,并且熟悉了GO语言的很多库,和看了GO语言的库的源代码。 下面是一个统计的脚本,实现了如下功能: 1.打开当前目录下的一个文件,循环读取一行,并且利用strings库,分割这行的字符串,形成一个列表,并且分析这个列表里面的数据; 2.读取当前目前的所有文件,循环处理; package main import ( "bufio" "fmt" "io" "log" "os" "regexp" "strings" "time" ) func main() { //定义浮点型的变量old,并且初始化为0.0 old := 0.0 for { total := 0.0 fail := 0.0 //得到当...阅读全文

博文 2015-06-17 23:00:28 cxm19830125

go中 elastic 聚合统计(2)

六、占比百分位 min,max,sum,avg 统计func aggsMaxMinSumAvg(index string) {client :=getCli()aggsMax :=es.NewMaxAggregation().Field("amount")aggsMin :=es.NewMinAggregation().Field("amount")aggsAvg :=es.NewAvgAggregation().Field("amount")aggsSum :=es.NewSumAggregation().Field("amount")result, err := client.Search().Index(index).Size(0).Aggregation("avg", aggsAvg...阅读全文

博文 2019-11-10 09:33:31 545305939

Go语言学习札记—— 第二章 Go编程环境(2)

2.2 运行 2.2.1 Hello World 实例 hello.go 代码: package main import "fmt" func main() { fmt.Printf("Hello, world; 世界/n") } 编译代码: $8g hello.go 8g 是针对i386 指令的编译器,它的输出文件为 hello.8 。其中 ‘8’ 表示文件是 i386 指令的输出文件。 如果是amd64 和arm 处理器,后缀则为 ‘6’ 和 ‘5’ 。 也就是说,如果你用的是amd64 处理器,那么应该用6g 命令编译, 输出的文件为hello.6 。 链接代码: $8l hello.8 运行程序: $hello.out 或者使用 $8l -o hello.exe hello.8 直接...阅读全文

go 开发环境

shell go env sublime text command+b打开sublime text终端 使用go build xx(项目名称)对其进行编译, [go build helloGo| done: 420.495985ms ] [./helloGo| done: 10.532868ms ] 如果仅是只需看运行结果,而不产生可执行文件(文件名和项目名一样)则在sublime text终端中直接使用go run xxx.go + $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('阅读全文

基于gitlab的golang项目构建

1. 准备Makefile 根目录下创建名为Makefile的文件。内容如下: export VERSION=1.0.0 export ENV=prod export PROJECT=bpsp TOPDIR=$(shell pwd) # OBJ_DIR=$(OUTPUT)/$(PROJECT) # OBJTAR=$(OBJ_DIR).tar.gz SOURCE_BINARY_DIR=$(TOPDIR)/bin SOURCE_BINARY_FILE=$(SOURCE_BINARY_DIR)/$(PROJECT) SOURCE_MAIN_FILE=main.go BUILD_TIME=`date +%Y%m%d%H%M%S` BUILD_FLAG=-ldflags "-X main.versio...阅读全文

go语言1小时——从不会到入门

磨刀不误砍柴工——go语言学习必备资料: 1. go 下载安装 2. 官方文档 Effective go 3. 官方文档中文翻译pdf下载 4. 国人写的go IDE——LiteIDE 32.1 本文原文地址:http://blog.csdn.net/caib1109/article/details/75578974 第一步——Hello world // testDemo project main.go package main import ( "fmt" ) func main() { fmt.Println("Hello World!") } 第二步——项目结构 go install和go build之争。目前,IDEA插件和LiteIDE都采用了go build。Eclipse插件...阅读全文

博文 2018-12-17 00:31:02 caib1109

KubesphereV2.1.1部署在Minikube-kubernetes集群上

1. 背景 想体验KubesphereV2.1.1版本部分功能 Kubesphere社区提供的在线DEMO环境比较简单,满足不了我想体验的功能 Kubesphere社区ks-installer安装工具相对较重 使用简单的kubernets部署yaml文件搭建一套最简Kubesphere环境(基本核心组件,不包括Jenkins/Monitor/Devops/Sonarqube等增值服务) 2. 环境说明 macos版本为:mojave-10.14 minikube版本为:v1.5.2 kubernetes版本为:v1.14.3 kubesphere版本为:v2.1.1 3. 部署文件 所有的部署文件,都是从ks-installer项目抽取,文件名称可能与ks-installer不一样(注意ks...阅读全文

博文 2020-04-17 17:34:35 道九言

golang 测试gotests

如果没有安装gotests, 首先安装: go get -u github.com/cweill/gotests 为指定函数生成单元测试 gotests -only 函数名 待测函数所在文件 生成某一文件内的全部函数的单元测试 gotests -all 文件名称 这两个命令会将单元测试的代码输出到terminal终端上。 想输出到文件,可后接-w选项,会自动生成类似源文件名称_test.go这样的测试文件。 gotests -only 函数名 -w 待测函数所在文件 gotests -all -w 文件名称 -w后接多个文件,可同时为这多个文件生成单元测试文件。 生成的测试用例是如下这个样子: name: 测试用例的名称。 args: 传入测试函数的参数。 want: 期望得到的值。这个wa...阅读全文

博文 2020-02-23 18:32:54 金果儿

mod的使用我学明白了,新手快看过来,相信我看了这个之后你不会再有mod 加载本地模块的问题了

***mod问题*** 1.malformed module path "chatroom/common/message/message": missing dot in first path element 2.cannot find module providing package chatroom.com/common/message 本地模块找不到 ***注意*** ***重点*** ***mod的使用我学明白了,新手快看过来,相信我看了这个之后你不会再有mod 加载本地模块的问题了*** 我之前写的处理方式,错了,是不对的,正确的方式,是下面这种方式: 在项目的根目录创建go.mod文件【命令 : go mod init 项目名称】 调用本地目模块只需要在impor "项目名称/本...阅读全文

博文 2020-05-14 23:40:38 tianlijun

[系列] - go-gin-api 规划目录和参数验证(二)

概述 首先同步下项目概况: 上篇文章分享了,使用 go modules 初始化项目,这篇文章咱们分享: 规划目录结构 模型绑定和验证 自定义验证器 制定 API 返回结构 废话不多说,咱们开始吧。 规划目录结构 ├─ go-gin-api │ ├─ app │ ├─ config //配置文件 │ ├─ config.go │ ├─ controller //控制器层 │ ├─ param_bind │ ├─ param_verify │ ├─ ... │ ├─ model //数据库ORM │ ├─ proto │ ├─ ... │ ├─ repository //数据库操作层 │ ├─ ... │ ├─ route //路由 │ ├─ middleware │ ├─ route.go │...阅读全文

博文 2019-08-28 14:04:17 訢亮

7 款国产开源项目带你理解神秘的中间件|Gitee 项目推

在系统软件之中,操作系统、数据库、中间件的三驾马车,中间件是最神秘的,而且是一个专业化非常强的细分产业。中间件技术主要用来支撑分布式软件的开发,在大型分布式软件系统中中间件技术发挥着极其重要的作用。今天,小编推荐 7 款 Gitee 上的中间件开源项目,希望能够让你体会到中间件技术的魅力。1、项目名称:高性能 Redis 中间件服务 nredis-proxy 项目简介:nredis-proxy 是一个以 redis 协议为主的高性能稳定的代理中间件服务,不侵入业务代码,与业务毫无联系,不需要改任何应用代码,天然支持分布式部署。项目地址:https://gitee.com/284520459/nredis-proxy2、项目名称:.net 业务消息队列 Dyd.BusinessMQ 项目简介:...阅读全文

博文 2020-01-17 01:32:45 码云Gitee

k3log基于uber zap实现开箱即可,还融合go-spew调度利器

### k3log 开箱即用 ``` //默认采用key-value, json形式,命令行输出 k3log.Info("name", "k3log") //2019-02-18T15:11:23.370+0800 INFO main.go:7 {"name": "k3log"} //开箱即用的NewDevelopment, 日志输入到文件,并实现异步刷新文件 k3log.NewDevelopment("开发模式", "dev.log") defer k3log.Sync() k3log.Dump("name", "k3log日志") //手动配置 k3log.SetLogger(conf.WithLogType("json"), //打印json格式 conf.WithProjectNam...阅读全文

Go-sword(利刃????️)一款基于Go语言的可视化web管理后台生成工具

Demo 体验地址 <工具体验地址 http://go-sword.osinger.com/> <新项目地址http://go-sword-app.osinger.com/> Github 地址如下:https://github.com/sunshinev/... Go-sword(利刃)是一款基于Go语言的可视化web管理后台生成工具 目标就是快速的创建CRUD可视化的后台 根据MySQL的表结构,创建完整的管理后台界面,开发者无需再重复手动的创建具有CRUD能力的页面只需要点击按钮即可生成完整的管理后台 特点 一键生成,无需写一行代码 支持增加、删除、编辑、列表、批量删除、分页、检索 页面基于Vue.js + iView 针对每个数据表都生成了单独的逻辑文件,开发者可以求使用Vue或者i...阅读全文

博文 2020-04-27 23:32:45 jaysun

06-Go语言命令行参数

GO命令行操作指令 标准go语言项目文件目录格式 项目文件夹就是GOPATH指向的文件夹 src文件夹是专门用于存放源码文件的 main文件夹是专门用于存储package main包相关源码文件的 其它文件夹是专门用于存储除package main包以外源码文件的 bin文件夹是专门用于存储编译之后的可执行程序的 pkg文件夹是专门用于存储编译之后的.a文件的 |---项目文件夹 -----------|--------src文件夹 -----------------------------|--------main文件夹 -----------------------------|--------其它文件夹 -----------|--------bin文件夹 -----------|--...阅读全文

博文 2018-10-15 19:34:39 月色下的阳光

[系列] - go-gin-api 规划目录和参数验证(二)

概述 首先同步下项目概况: 上篇文章分享了,使用 go modules 初始化项目,这篇文章咱们分享: 规划目录结构 模型绑定和验证 自定义验证器 制定 API 返回结构 废话不多说,咱们开始吧。 规划目录结构 ├─ go-gin-api │ ├─ app │ ├─ config //配置文件 │ ├─ config.go │ ├─ controller //控制器层 │ ├─ param_bind │ ├─ param_verify │ ├─ ... │ ├─ model //数据库ORM │ ├─ proto │ ├─ ... │ ├─ repository //数据库操作层 │ ├─ ... │ ├─ route //路由 │ ├─ middleware │ ├─ route.go │...阅读全文

博文 2019-08-28 13:02:37 新亮