OSCON 2014大会上Go语言相关主题总结

lovegolang · · 4179 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

在O'Reilly举办的[OSCON 2014](http://www.oscon.com/oscon2014)大会上,Go语言相关的主题要多于以往,这也从一个侧面说明了人们对这门语言的关注程度越来越高。Go语言官方博客对此进行了[总结](http://blog.golang.org/osconreport)。这些主题包括5个演讲,2个研讨会及1个非正式的讨论([Birds of a Feather](http://en.wikipedia.org/wiki/Birds_of_a_feather_(computing)))。内容涉及从Java切换到Go、MongoDB与Go、面向对象的Go等内容。 我们先来看一下这些演讲。 Matt Stine的演讲题目是[《A recovering Java developer learns Go》](http://www.slideshare.net/mstine/java-devlearnstogooscon),介绍了他从Java切换到Go的经验。他首先介绍了Go语言产生的背景,以及Go的目标: - 安全、高效的静态类型、编译型语言 - 动态、解释型语言的开发效率和感觉 - 解决现代计算环境的问题 - 多核处理器 - 网络系统 - 大规模计算集群 - Web编程模型 然后他又从特性与惯用法、包/模块、类型/OOP/接口以及并发4个方面对比了Go和Java。 Steve Francia演讲的题目是[《Painless Data Storage with MongoDB and Go》](http://spf13.com/presentation/MongoDB-and-Go),他是MongoDB的主要开发者,他介绍了使用MongoDB和Go语言的实践经验。他提到,之所以选择Go语言,原因是: - Go的执行速度接近C - Go的编译时间可以与动态、解释型语言媲美 - Go很友好 比如很多地方感觉就像动态语言,容易全部记住的很小的语言核心等 - Go是并发的 并发是语言的一部分,任何函数都可以变成一个goroutine,goroutine可以并发运行,通过Channel通信 Steve还有一场演讲——[《Go for Object Oriented Programmers》](http://spf13.com/presentation/go-for-object-oriented-programmers),介绍了如何在Go中实现某些面向对象概念。主要内容包括: - 如何在Go语言中使用面向对象编程的基本元素,如类、对象等 - Go语言中的静态类型与伪动态类型 - 在Go语言中构建优美的接口 - 使用Go接口和鸭子类型简化架构 - 有其他OO语言背景的开发者常犯的错误 - Go语言中好的设计原则 Josh Bleecher Snyder以[《Gophers with hammers》](https://talks.golang.org/2014/hammers.slide#1)为题,谈到了他编写Go源代码处理工具的经验。Go语言在设计时就考虑到了工具的问题,本身也提供了很多工具,比如go、godoc、gofmt等。有时候需要根据自己的需求定制或开发一些工具,Josh分享的就是他在这方面的经验。 Francesc Campoy的演讲题目是[《Inside the Go playground》](http://talks.golang.org/2014/playground.slide#1),谈到了Go Playground中所有可能出错,但是Go团队却未加阻止的地方。[Go Playground](http://play.golang.org/)是Go语言官方推出的一个Web服务,支持开发者在页面提交源代码,代码会在网站后台编译并运行,之后结果会显示在网页上。其架构如图所示: ![](http://studygolang.qiniudn.com/go_playground.png?imageView2/0/w/480/h/270) 他分析了后端在接受代码、编译并运行过程中可能出现的问题,比如资源耗尽、越权访问等。 两个研讨会是Steve Francia的[《Getting started with Go》](http://spf13.com/presentation/first-go-app)和Chris McEniry的[《Quick introduction to system tools programming with Go》](http://cdn.oreillystatic.com/en/assets/1/event/115/A%20Quick%20Introduction%20to%20System%20Tools%20Programming%20with%20Go%20Presentation.pdf)。 在非正式的讨论上,来自不同公司的Go语言专家介绍并探讨了Go入门、Go最佳实践、Go与MongoDB以及在App Engine上使用Go等主题。 这些演讲和研讨会给我们带来了很多干货,感兴趣的读者可以查阅相关讲稿。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4179 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传