Gopher China 2021 讲师专访之续日 迅猛发展的 Go 语言改善服务端开发体验
共 1953字,需浏览 4分钟
·
2021-06-08 07:19
续日
续日,目前就职于阿里巴巴,担任高级开发工程师,前百度 Go 语言编程委员会成员。Go 语言最受欢迎的开源 Excel 文档基础库 Excelize 作者,专注于 Go 语言实践、中间件研发与大规模数据处理。
最初如何与 Go 结识的?在此之前,有无接触过其他语言?谈谈他们的优缺点。
六年前我在从事企业安全产品开发的时候接触到了 Go 语言,相比于 C、Java 和 PHP 语言,从性能、可移植性和开发效率三方面综合来说 Go 语言做了很好的平衡,对于当时正在开发的业务来说是很好的选择。2015 年的时候 Go 语言的生态还不像现在这么丰富,历经多年的迅猛发展 Go 语言不仅有 Killer application、众多 Framework、还有海量的开源 library,这使得 Go 语言的服务端开发体验越来越好。
Go 语言中最看好哪种特性,谈一谈理由以及你希望它改进的方面
从 Go 1.14 起正式支持的 Go Modules,使得包管理更规范、机制更成熟,为开发者维护和管理大型项目提供了更好的解决方案。期待 Go 语言在桌面侧的发展,道阻且长,行则将至。
Go 语言对大厂和创业公司来说分别有什么优越性?
Go 语言对大厂来说在降本提效、打破技术选型的封闭性方面的收益比较明显,对于创业公司来说更多的是提高业务灵活性,帮助业务更快落地。
Go 有没有帮助解决公司的实际问题?
之前在百度做信息流产品的开发,团队采用 Go 语言重构场景单一流量大的 PHP 应用,最大的收益是节省了近 50% 的服务器资源成本,在有基础框架和配套运维工具的前提下,语言转型过程也是比较顺利的,研发人员的语言学习成本并不高。
对众多大厂转 Go 提一些建议吧,在选型上 Go 语言适用什么场景,不适用什么场景?
Go 语言在多核 CPU 高并发网络编程场景上更具优势,在语言转型上可以尝试结合业务特点,找到业务相对单一的场景进行试点,然后再根据反馈逐步展开实践应用,同时建设配套的基础研发设施。对外交流借鉴业界实践经验,对内积累沉淀形成适合自身业务的“最佳实践”。因为设计的出发点不同,每种语言都有擅长的领域,在系统编程、桌面端、客户端、WebAssembly 开发等领域目前来看采用 Go 语言还不适用。有些业务场景的性能瓶颈并不一定能通过语言的转型得以解决,考虑转型前需要系统评估帮助决策。
谈一谈 Go 的未来,将在哪些领域有更深的应用
在可预见的未来,Go 语言将继续延伸在云端应用、中间件、微服务、数据库和工具开发领域的应用。
介绍下本次分享的议题吧
在 Gopher China 2021 上我将带来「Processing XML and Spreadsheet in Go」主题演讲,是关于 Go 语言处理 XML 和 Excel 电子表格文档相关的 Topic。XML 是一种应用十分广泛的数据标记语言,Excel 办公文档是应用复杂 XML 的典型代表之一。近年来,企业信息化数字化建设、在线办公应用的兴起,伴随而来的是对传统办公文档转化为云端编辑,各类报表系统、企业应用、数据收集、录入和加工的应用场景,都对通过编程方式处理电子表格和其他以 XML 为基础的办公文档有了更多需求,本次议题将分享 Go语言在国际电子表格文档格式标准方面的实践。
分享一下如何快速掌握一门新的编程语言,分享一些经验给新gopher吧。学习go的最佳实践是什么? 推荐一些书吧!
基础的入门后,阅读优秀的代码,思考其背后的设计,结合实际问题动手编码,总结六个字就是多看、多想、多做。推荐阅读 The Go Programming Language 这本书和 Effective Go 页面上的指南。Go 语言是一门简约不简单的语言,在业务开发中通过细节积累经验,在排查和解决问题的过程中锻炼提升。
你是第几次参加 GopherChina,对GopherChina大会有何期待?
从 2016 年至今几乎每届 GopherChina 都有参加,通过这个技术交流的窗口了解 Go 语言在业界的最新实践应用,希望在学习和分享的过程中收获知识、得到成长。
想和各位技术大佬们同台见面嘛?
那就赶快点击下方「阅读原文」报名参加呀!