go第一天

一.语言的主要特性与发展的环境和影响因素 这个文章作者写的很好,从影响go发展的早期语言,为什么需要一个新语言,go语言的目标,go语言的设计思想,用途,特性等,都做了很好的讲解. 学习总结: 1.go也属于c系语言,但是又汲取了其它语言的精粹部分(有点王婆卖瓜的味道),比如包和声明方面(Pascal、Modula 和 Oberon),并发设计(通信序列进程 Communicating Squential Processes,Limbo 和 Newsqueak,Erlang),go有着类c的语法...阅读全文

CSDN博客 2014-08-05 10:54 threeyax

Go语言设计模式实践:组合(Composite)

关于本系列 这个系列首先是关于Go语言实践的。在项目中实际使用Go语言也有段时间了,一个体会就是不论是官方文档、图书还是网络资料,关于Go语言惯用法(idiom)的介绍都比较少,基本只能靠看标准库源代码自己琢磨,所以我特别想在这方面有一些收集和总结。 然后这个系列也是关于设计模式的。虽然Go语言不是一门面向对象编程语言,但是很多面向对象设计模式所要解决的问题是在程序设计中客观存在的。不管用什么语言,总是要面对和解决这些问题的,只是解决的思路和途径会有所不同。所以我想就以经典的设计模式作为切入点来...阅读全文

CSDN博客 2014-11-17 12:31 haizhongsenlin

第一回 ,如何写 go 代码

GOPATH 和 workspace go语言的核心原则是保持简单,在项目构造 方面,源代码 和 和 构建脚本是 放在一起的,结构是固定的,就像maven那样。 先在path后多加一个 go(下载解压后的go包)的bin,使你可以自由使用go的命令 GOPATH 的系统环境变量,和ava_home 对于 java 不一样,目的是为了让go的命令和其它相关工具找到go的workspace GOPATH d:\home\user\ext;d:\home\user\mygo 可以有多个,分号分开。un...阅读全文

CSDN博客 2012-09-29 10:28 suncaishen

Golang 学习及使用

Golang 学习及使用 @Author : Xuan Jun (idxuanjun@qq.com)@Link : http://blog.csdn.net/idxuanjun@Date : 2013-11-23@Version : 0.0.2@Desc : Golang 学习及使用 1. Golang 使用点滴 1.1. mymysql调用提示错误 在日常工作中,应用程序不使用数据库的是越来越少了,学习用,也就不考虑太多了,直接MySQL的上手,Go语言MySQL数据库驱动选择的mymysql...阅读全文

CSDN博客 2013-04-08 23:49 idxuanjun

Go语言设计模式实践:迭代器(Iterator)

关于本系列 决定开个新坑。 这个系列首先是关于Go语言实践的。在项目中实际使用Go语言也有段时间了,一个体会就是不论是官方文档、图书还是网络资料,关于Go语言惯用法(idiom)的介绍都比较少,基本只能靠看标准库源代码自己琢磨,所以我特别想在这方面有一些收集和总结。 然后这个系列也是关于设计模式的。虽然Go语言不是一门面向对象编程语言,但是很多面向对象设计模式所要解决的问题是在程序设计中客观存在的。不管用什么语言,总是要面对和解决这些问题的,只是解决的思路和途径会有所不同。所以我想就以经典的设计...阅读全文

开源中国博客 2014-12-01 11:59 huangml

Go语言设计模式实践:组合(Composite)

关于本系列 这个系列首先是关于Go语言实践的。在项目中实际使用Go语言也有段时间了,一个体会就是不论是官方文档、图书还是网络资料,关于Go语言惯用法(idiom)的介绍都比较少,基本只能靠看标准库源代码自己琢磨,所以我特别想在这方面有一些收集和总结。 然后这个系列也是关于设计模式的。虽然Go语言不是一门面向对象编程语言,但是很多面向对象设计模式所要解决的问题是在程序设计中客观存在的。不管用什么语言,总是要面对和解决这些问题的,只是解决的思路和途径会有所不同。所以我想就以经典的设计模式作为切入点来...阅读全文

开源中国博客 2014-12-01 11:59 huangml

GO语言学习(一)

GO编程语言是一项致力于使开发人员开发效率开加高效的开源项目。 Go是有表达力、简洁、清晰和有效率的。它的并行机制使其很容易编写多核和网络应用,而新奇的类型系统允许构建有弹性的模块化程序。Go编译到机器码非常快速,同时具有便利的垃圾回收和强大的运行时反射。它是快速的、静态 类型编译语言,但是感觉上是动态类型的,解释型语言。 译文摘自邢星译的《学习GO语言》 http://golang.org/doc/此网站含有学习文档及GO的安装程序 ——————————————————————————————...阅读全文

CSDN博客 2013-06-07 23:46 jhwdmc

Go实例学:break 和 continue

利用break 可以提前退出循环,break 终止当前的循环;也可以定义标签,break指定的循环体。 break的用法示例1: package main import ( "fmt" ) func main() { for i := 0; i < 10; i++ { if i > 5 { break //终止这个循环,只打印0到5 } fmt.Println(i) } } 输出结果 0 1 2 3 4 5 break的用法示例2: 循环嵌套循环时,可以在break 后指定标签。用标签决定哪个循...阅读全文

开源中国博客 2014-11-30 23:15 Goopand

Go实例学:内建函数

Go预定义了少数函数,这意味着无需引用任何包就可以使用它们。下面列出了所有的内建函数(截至go1.1): close new panic complex delete make recover real len append print imag cap copy println 备注:可以使用godoc builtin命令获得关于内建类型和函数的在线文档。 close 用于channel 通讯。使用它来关闭channel。 delete 用于在map 中删除实例。 len 和cap 可用于不同...阅读全文

开源中国博客 2014-11-30 23:31 Goopand

Effective Go

转自:https://golang.org/doc/effective_go.html Effective Go IntroductionExamplesFormattingCommentaryNamesPackage namesGettersInterface namesMixedCapsSemicolonsControl structuresIfRedeclaration and reassignmentForSwitchType switchFunctionsMultiple return...阅读全文

CSDN博客 2014-11-27 15:41 leonzhouwei

Go defer的C实现

Go defer的C实现 二 03 bigwhite技术志 Blog, Blogger, C, defer, GCC, GNU, Go, Golang, Linux, Opensource, Programmer, Ubuntu, 博客, 开源, 思考, 程序员, 编译器 1 Comment Go语言中引入了一个新的关键字defer,个人认为这个语法关键字让异常处理也变得得心应手许多,对改善代码的可读性和可维护性大有裨益,是典型的语法棒棒糖^_^。 像下面这种代码(伪代码): void foo(...阅读全文

辩证地看待“重新发明轮子”

辩证地看待“重新发明轮子” 十一 02 bigwhite技术志 Android, Apache, Blog, Blogger, C, Chrome, Cpp, CVS, Firefox, Git, Go, Golang, IE, iOS, iPod, leveldb, Mercurial, nginx, Programmer, redis, Ruby, Subversion, symbian, 博客, 思考, 感悟, 程序员, 重新发明轮子 1 Comment C程序员骨子里都有一种“重新发明轮...阅读全文

Tony Bai 2012-11-02 bigwhite

也谈Go语言代码包分发

也谈Go语言代码包分发 十 25 bigwhite技术志 bitbucket, Blog, Blogger, Git, github, Go, Golang, Google, launchpad, Opensource, Programmer, svn, 博客, 开源, 版本控制, 程序员 1 Comment Go语言目前(截至1.0.2版本)尚不支持直接链接.a文件(这里的.a文件指的不是传统静态共享库,而是对golang的非main包build后的产物)。这样一来Go的第三方库包或组织内部的...阅读全文

也谈Go语言声明语法

也谈Go语言声明语法 十 11 bigwhite技术志 Blog, Blogger, C, Go, Golang, Google, Programmer, 声明, 开源, 程序员 No Comments 一直在从事C语言服务端应用开发,对C的变量声明语法早已烂熟于胸,同时也深知复杂的C变量声明十分晦涩难解。记得若干年前还特意花了一些时间研究理解复 杂C变量声明的方法,记忆中这些方法包括:《C专家编程》中提到的“优先级”规则、right-left规则以及顺时针/螺旋形规则等,幸运地是我们日常 开发...阅读全文

Tony Bai 2012-10-11 bigwhite

Go与C语言的互操作

Go与C语言的互操作 九 26 bigwhite技术志 Blog, Blogger, C, Cgo, enum, GCC, Go, Golang, Google, interoperability, Linux, Opensource, Programmer, Slice, struct, union, 互操作, 共享库, 开源, 思考, 数组, 枚举, 汇编, 程序员, 结构体, 编译器, 联合体, 链接 5 Comments Go有强烈的C背景,除了语法具有继承性外,其设计者以及其设计目标都...阅读全文

Tony Bai 2012-09-26 bigwhite

Go vs Erlang

Go vs Erlang因为 云巴 系统对高并发、低延迟的需求,我们对各个语言、平台做了很多的调研比较工作。这自然就包括致力于开发高并发应用的 Go 和 Erlang。并发Go 对高并发的支持通过 goroutine 实现。goroutine 可以理解为轻量级的 线程(thread)。同一个 Go 应用创建的 goroutine 共享地址空间。Erlang 的高并发通过轻量级 进程(process)实现,每一个进程都有独立的状态记录。另外,使用 goroutine 要注意,goroutine 运...阅读全文

CSDN博客 2014-11-27 11:46 heiyeshuwu

go第三方库的安装例子

go第三方库的安装 设置环境变量GOPATH=c:\go\code 在c:\go\code下创建源代码目录src 进入c:\go\code\src 装第三方库命令 git clone git://github.com/alphazero/Go-Redis.git redis 可以在任意目录执行安装redis go install redis 安装后再c:\go\code目录下生成一个pkg目录并且在目录下生成redis.a 可以在在c:\go\code\src下生成目录文件xn 结构如下 文件内...阅读全文

CSDN博客 2014-11-25 21:18 anlun