Gopher China 2018讲师专访 - 肖玮

ARM 300浏览

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

自我介绍

2016年至今一直在arm开源软件部门担任主任工程师,领导Golang针对arm64 架构的功能实现(enabling)和性能优化工作,同时也是Golang汇编器(asm)和编译器(compile)针对arm64架构改进的主要贡献者之一。在加入arm之前一直供职于Intel开发者工具事业部,长期从事针对X86架构的动态二进制翻译器(DBT)和编译器产品等相关工作。

什么原因,什么时候与 Go 结缘?

初次接触Go语言是2012年,当时去北京参加HelloGcc大会(现在改名为:开源开发工具大会),会后被邀请参加主办方的晚宴,期间聊到Gcc支持Go语言的一些八卦趣闻,第一次听说这门谷歌公司的自家语言,此后一直关注Go语言发展,说来真是缘分,加入Arm后负责的技术方向就是关于Go语言。

在工作中遇到哪些挑战?

日常工作重心是针对Arm架构的Go语言底层功能实现和性能优化,远离Go语言应用于大型项目的工程实践,容易忽略语言与架构无关的顶层设计和思想。

有什么想对 Gopher 说的话和建议?

说到编写高性能Go程序,大家通常会想到的就是尽可能多利用goroutine并行处理,更进一步优化的话一般就会从语言特性出发,示例尽量避免defer和反射;而对于一些内存分配释放频繁的场景会考虑自己手动管理或者调整GC参数;对于性能要求特别高的场景还可以考虑cgo或者处理器架构,示例一些特殊指令和流水线特性,最大程度调动可用的计算和存储资源。

有什么学习 Go 的方法和书籍推荐?

最常访问的网站就是Go语言开发者讨论组,那里可以了解到最新前沿动态,并且经常会出现一些很有深度的技术讨论贴。另外很多开发者(示例Dave Cheney)的技术博客也是值得拜读的,他们经常会系统性介绍某类问题,解决方案和反思总结。如果八卦心够强的话也可以关注一些活跃维护者(示例Badfitz)的Twitter,上面经常会有一些有意思的对话和互动。

如何看待 Go 在中国的发展,预计未来是什么样?

Go 不仅擅长 Web 系统、API 服务等应用层软件的开发,也可以用来开发中间件甚至基础设施,Go就是为云而生的语言,云计算中几乎所有的软件都可以用 Go 来开发,随着云计算的持续火爆,势必出现很多Go的杀手级应用,进一步推动Go的普及和发展。


第四届 Gopher China 大会4月将在上海举办,今年也是第一次增加了会前的 培训 。本届的大会无论从规模,内容都将有更多值得大家期待的!

相关阅读:

重磅发布-2018 Gopher China 议题揭晓

国际名师 William 带来终极 Go 培训

Go 语言发展史及史上最全 Go 语言知识图谱!

Go的2017回顾和2018展望

区块链来了,Go工程师成为升值最快的职业

点击阅读原文报名2018 Gopher China 大会,最后一波早鸟票,倒计时3天!

4月1日起恢复888原价〜

Go 中国粉丝独家福利优惠码GopherChina

报名输入可享85折优惠!数量有限,先到先得哦〜