写点什么

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

  • 2014-08-27
  • 本文字数:1268 字

    阅读完需:约 4 分钟

在 O’Reilly 举办的 OSCON 2014 大会上,Go 语言相关的主题要多于以往,这也从一个侧面说明了人们对这门语言的关注程度越来越高。Go 语言官方博客对此进行了总结。这些主题包括5 个演讲,2 个研讨会及1 个非正式的讨论( Birds of a Feather )。内容涉及从 Java 切换到 Go、MongoDB 与 Go、面向对象的 Go 等内容。

我们先来看一下这些演讲。

Matt Stine 的演讲题目是《A recovering Java developer learns Go》,介绍了他从 Java 切换到 Go 的经验。他首先介绍了 Go 语言产生的背景,以及 Go 的目标:

  • 安全、高效的静态类型、编译型语言
  • 动态、解释型语言的开发效率和感觉
  • 解决现代计算环境的问题
    • 多核处理器
    • 网络系统
    • 大规模计算集群
    • Web 编程模型

然后他又从特性与惯用法、包 / 模块、类型 /OOP/ 接口以及并发 4 个方面对比了 Go 和 Java。

Steve Francia 演讲的题目是《Painless Data Storage with MongoDB and Go》,他是 MongoDB 的主要开发者,他介绍了使用 MongoDB 和 Go 语言的实践经验。他提到,之所以选择 Go 语言,原因是:

  • Go 的执行速度接近 C
  • Go 的编译时间可以与动态、解释型语言媲美
  • Go 很友好 比如很多地方感觉就像动态语言,容易全部记住的很小的语言核心等
  • Go 是并发的 并发是语言的一部分,任何函数都可以变成一个 goroutine,goroutine 可以并发运行,通过 Channel 通信

Steve 还有一场演讲——《Go for Object Oriented Programmers》,介绍了如何在 Go 中实现某些面向对象概念。主要内容包括:

  • 如何在 Go 语言中使用面向对象编程的基本元素,如类、对象等
  • Go 语言中的静态类型与伪动态类型
  • 在 Go 语言中构建优美的接口
  • 使用 Go 接口和鸭子类型简化架构
  • 有其他 OO 语言背景的开发者常犯的错误
  • Go 语言中好的设计原则

Josh Bleecher Snyder 以《Gophers with hammers》为题,谈到了他编写Go 源代码处理工具的经验。Go 语言在设计时就考虑到了工具的问题,本身也提供了很多工具,比如go、godoc、gofmt 等。有时候需要根据自己的需求定制或开发一些工具,Josh 分享的就是他在这方面的经验。

Francesc Campoy 的演讲题目是《Inside the Go playground》,谈到了 Go Playground 中所有可能出错,但是 Go 团队却未加阻止的地方。Go Playground 是 Go 语言官方推出的一个 Web 服务,支持开发者在页面提交源代码,代码会在网站后台编译并运行,之后结果会显示在网页上。其架构如图所示:

他分析了后端在接受代码、编译并运行过程中可能出现的问题,比如资源耗尽、越权访问等。

两个研讨会是 Steve Francia 的《Getting started with Go》和Chris McEniry 的《Quick introduction to system tools programming with Go》

在非正式的讨论上,来自不同公司的Go 语言专家介绍并探讨了Go 入门、Go 最佳实践、Go 与MongoDB 以及在App Engine 上使用Go 等主题。

这些演讲和研讨会给我们带来了很多干货,感兴趣的读者可以查阅相关讲稿。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-08-27 03:493471
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 150.2 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

《SSM深入解析与项目实战》目录与说明

谙忆

1.1 了解Spring框架 -《SSM深入解析与项目实战》

谙忆

1.2 了解MyBatis -《SSM深入解析与项目实战》

谙忆

2.1 类加载器、 双亲委派模型 -《SSM深入解析与项目实战》

谙忆

JVM系列之:再谈java中的safepoint

程序那些事

Java JVM JIT safepoint

视频会议专线部署不会?别急,我教你

华为云开发者联盟

网络 网关 华为云 高清视频 welink

InnoDB存储引擎简介

Simon

MySQL innodb

有它的加持,单机玩转百亿大数据不是梦!

易观大数据

企业网站搭建避坑指南

姜奋斗

网站 新手指南 企业 网站搭建 避坑

【译】代码中如何写出更有意义的命名

Jackey

代码质量

操作系统和并发的爱恨纠葛

苹果看辽宁体育

Java 并发

Google Protocol Buffer 学习笔记

Geek_4z9ami

protobuf

SQL的三十而已—SQL30问

大唐小生

sql 技术人生

如何将FastDFS存储数据平滑迁移至XSKY对象存储?

XSKY星辰天合

如何设计一个优秀的组件

Lee Chen

大前端

微服务架构下你的数据一致了吗?

码猿外

架构 微服务 数据一致性

CDN百科10:快速上手阿里云DCDN全站加速,最新配置与购买优惠教程

阿里云Edge Plus

CDN 直播 网页加速

秒懂云通信:如何使用阿里云号码认证服务(小白指南)

阿里云Edge Plus

云通信 通信云 号码认证

LeetCode题解:24. 两两交换链表中的节点,迭代,JavaScript,详细注释

Lee Chen

大前端 LeetCode

ChaosBlade:从零开始的混沌工程(五)

郭旭东

Kubernetes 云原生 混沌工程

联盟链有自己的路要走

Leonbond

区块链 联盟链 公有链

设计模式之假如需要一百万个对象

架构师修行之路

数据处理能力相差 2.4 倍?Flink 使用 RocksDB 和 Gemini 的性能对比实验

Apache Flink

flink

七的婚姻生活

徐说科技

C/C++陷阱与套路,当年就是折在这些地儿…

华为云开发者联盟

c++ 设计 编辑 程序 陷阱

Jessie’s产品经理系列1-基础能力篇

架构5班杨娟Jessie

产品经理 能力模型

菊长说丨一文读懂MySQL4种事务隔离级别

华为云开发者联盟

MySQL 数据库 事务隔离级别 事务 华为云

Java项目如何分层

老胡爱分享

分层架构 项目

设计模式中的单例模式并不完美

架构师修行之路

设计模式 单例模式 23种设计模式 高并发系统设计

计算机网络基础(十五)---传输层-TCP协议详解

书旅

计算机网络 网络 协议栈 协议族

设计模式之——单例模式你真的会吗?

诸葛小猿

设计模式 单例模式 Singleton 饿汉式 懒汉式

OSCON 2014大会上Go语言相关主题总结_语言 & 开发_臧秀涛_InfoQ精选文章