Win7下搭建 Go+Sublime Text2+MongoDB+Revel+MGO的开发环境
一、安装Go语言运行环境 1、下载:Go语言相应操作系统的安装文件并点击按着向导安装即可。 下载地址:http://code.google.com/p/go/downloads/list 2、安装: 安装文件有msi和zip两种格式的。 .msi文:是标准windows安装文件,双击安装即可。正常情况下不需要手工配置环境变量 .zip:zip压缩包...阅读全文
一、安装Go语言运行环境 1、下载:Go语言相应操作系统的安装文件并点击按着向导安装即可。 下载地址:http://code.google.com/p/go/downloads/list 2、安装: 安装文件有msi和zip两种格式的。 .msi文:是标准windows安装文件,双击安装即可。正常情况下不需要手工配置环境变量 .zip:zip压缩包...阅读全文
if else分支在go语言里是简单明了的。 这里有个简单的例子。 if语句可以没有else。 可以在条件语句前添加别的语句。这个语句中声明的变量的作用域在所有的分支中。 注意:在go语言中条件语句没必要带圆括号。但是分支中必须有大括号。 在go语言里面没有三元条件语句,所以即使是简单的条件语句你也必须使用全机构的if语句(就是说go里没有个?:表达式 )。 Plain Text code ? 1 2 3 4 5 6 7 8 9 10 11 ...阅读全文
1) Append a slice b to an existing slice a: a = append(a, b...) 2) Copy a slice a to a new slice b: b = make([]T, len(a)) copy(b, a) 3) Delete item at index i: a = append(a[:i], a[i+1:]...) 4) Cut from index i till j out of slice a: a = append(a[:i],...阅读全文
package main import ( "syscall" ) func abort(funcname string, err string) { panic(funcname + " failed: "+err) } func print_version(v uint32) { major := byte(v) min...阅读全文
最近几天不知道为什么开始学了下GO的基础语言,今天吃好饭搞起。 首先推荐一个写Go的博客(陈佳桦《GoWeb编程》英文版译者),我很多东西都参考他的博客,但是GO更新速度还是蛮快 ,有的东西被改掉了。 1.安装GO,下载安装包,windows下点击就送。 2.设置GOPATH,windows就在系统环境变量中新建一个GOPATH项,后面的地址随你,我是直接放在了GO安装目录下,自己建的目录里面(千万别放在GO安装目录下就行),我是XXX\go\dev下。 3.编译工具是sublime(...阅读全文
1. install go 2. configure sublimehttp://blog.csdn.net/cyxcw1/article/details/10329481 3.io package 1) io.Reader 1 // io.Reader 接口示例 2 package main 3 4 import ( 5 "fmt" 6 "io" 7 "os" 8 "strings" 9 ) 10 11 func main() {...阅读全文
golang windows下 访问oracle数据库 ======================= 参考了 https://github.com/wendal/go-oci8 中所说的方法,但感觉有些地方没有写详细 花了不少时间。 1. 增加系统变量 GOPATH=c:\go 2. 下载OCI最新版,存放于C:\instantclient_11_2 3. 下载OCI SDK最新版,存放于C:\instantclient_11_2\sdk 4. 下载MinGW最新版,安装在C:\mi...阅读全文
1 2 3 4 5 6 7 月日时分秒年时区标准以这个对应 const ( 43 ANSIC = "Mon Jan _2 15:04:05 2006" 44 UnixDate = "Mon Jan _2 15:04:05 MST 2006" 45 RubyDate = "Mon Jan 02 15:04:05 -0700 2006" 46 RFC822 =...阅读全文
下一版本的Go在最基础的软件包方面将包含显著的API变更。除非进行更新,采用新版 API,否则将无法编译实现HTTP服务器句柄、调用net.Dial、调用os.Open及使用reflect软件包的代码。随着Go语言愈加稳定,发布频率减缓将成为常态。每周的快照版本中都会有API变更,部分可能能自动管理;然而,合计起来看,手动更新现有代码的工作量仍然非常地大。 Gofix是一款减轻更新现有代码工作量的新工具。它读取源文件中的程序,查找对旧版API的使用,用当前API进行改写,并将程序写回文件。有些...阅读全文
1: 打印包括字段在内的实例的完整信息 同 %+V fmt.Printf("Hello world! %v","hufeng") 输出:Hello world! hufeng 2:打印包括字段和限定类型名称在内的实例的完整信息 fmt.Printf("Hello world! %#v","hufeng") Hello world! "hufeng" 3:打印某个类型的完整说明 fmt.Printf("Hello world! %T","h...阅读全文
先看一段代码 先放一段代码,人工运行一下,看看自己能做对几题? package main import "fmt" func main() { var a int = 1 var b *int = &a var c **int = &b var x int = *b fmt.Println("a = ",a) fmt.Println("&a = ",&a) fmt.Println("*&a = ",*&a) fmt.Pri...阅读全文
http://www.myexception.cn/program/679738.html Go调用C代码,Cgo笔记 参考: 官方文档: http://golang.org/cmd/cgo/ http://blog.golang.org/2011/03/c-go-cgo.html 一份博文,编译过程讲得比较细: http://googollee.blog.163.com/blog/static/1159411201031812128593/ Go语言教程:使用C...阅读全文
import "os" func main() { for i:=0; i<20; i++ { go func() { for { b:=make([]byte, 10) os.Stdin.Read(b) // will block } }() } select{} } 会产生21个线程: runtime scheduler(src/pkg/runtime/proc.c)会维护一个线程池,当某个goroutine被block后,scheduler会创建一个新线程给其他ready的goroutin...阅读全文
这里,我并不打算引起语言争论的口水仗,我并不是什么大牛,对语言的造诣也不深,只是想通过自己实际的经历,来说说为什么我在项目中选择go。 其他语言的经历 C++ 在接触go之前,我已经有多年的c++开发经验。主要用在游戏服务端引擎开发以及P2P上面,那可是一段痛并快乐的时期,以至于我看到任何的程序钉子问题都觉得可以用c++这把锤子给敲定。但是对于互联网项目开发来说,除非你的团队整体的c++技术水平nb,并且有很强的代码规范,不然真可能是一场灾难,更别说我们现有团队几乎没其他人会这玩意了。 本来...阅读全文
go指向空间为 工作空间 不是go所在目录 还有就是必须配置git路径 要不无法使用 go的get功能 对了 gobee的bin在空间根目录里 不设置环境变量命令也是不能直接使用的 所以也得设置下 这是环境变量参考 没有GOPATH的话不能用go get 而且go get必须配置git GOPATH D:\gospace GOROOT 也就是go程序所在根目录 windows时还是写上吧 在linux时当PATH指定go\bin目录时 可以不用写 在linux下如果安装的不是默...阅读全文