说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

选择Go语言的12个理由

HTML文档下载 WORD文档下载 PDF文档下载
Go语言在编程语言的家族中算是一个比较新的成员,弥补C语言的不足并且保持了C的极简主义,专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。

编者按:多核化和集群化是互联网时代的典型特征,那语言需要哪些特性来应对这些特征呢?多数语言在语法层面并不直接支持协程,而通过库的方式支持的协程的功能也并不完整,比如仅仅提供协程的创建、销毁与切换等能力。如果在这样的协程中调用一个同步 IO操作,比如网络通信、本地文件读写,都会阻塞其他的并发执行协程,从而无法真正达到协程本身期望达到的目标,而Go语言的出现解决了这个问题。

以下是原文:

Go语言是谷歌推出的一种编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。

Go语言在编程语言的家族中算是一个比较新的成员,弥补C语言的不足并且保持了C的极简主义,因此在过去的几年中它的发展却十分迅速。目前在我的工作中Go语言也充当着一个重要的角色!

到底Go语言对企业来说有什么好处?下面简单介绍一下企业选择Go语言的12个理由:

1. 一个完整的语言体系

Go语言已经逐渐发展成一个完整的体系,不论是Go项目自身还是ta的社区都有了极大的发展。

2. C级性能

Go语言目前的性能已经达到了C语言的程度。而且Go语言的性能要比其他企业级语言(如Java、Scala等)更强。随着Go语言版本的更新,它将会变得愈来愈成熟。

"Go is like a better C, from the guys that didn’t bring you C++" — Ikai Lan

3. 快速编译

Go语言编译速度很快,如此快速的编译使它很容易作为脚本语言使用。因为谷歌设计Go语言就是为了解决谷歌自身的问题——数以万计的代码和CPU核心。我自己的也验证过Go语言的编译速度,几乎是和语言同步进行。 

4. 跨平台

Go语言可以在多个平台上进行编译。Go语言设计支持主流的32位和64位的x86平台,同时也支持32位的ARM架构,同时支持多种操作系统,在企业中不需要针对系统环境做额外的部署。

5.测试调优框架

这些基准测试可以查看: my recent post about Golang benchmarking

6. 语言级并行

并发性是能够同时执行多个计算结果。现在并发性已经成为衡量一个语言的关键特性,Go语言就是基因里面支持的并发,可以充分的利用多核,很容易的使用并发。

7. 代码风格 - gofmt

通过谷歌的页面可以看见Go语言里面内置了很多工具链,最好的应该是gofmt工具,自动化格式化代码,能够让团队review变得如此的简单,代码格式一模一样,想不一样都很困难

8.内置文档 - godoc

企业中API和程序的相互协作以及和第三方协作是非常重要的,Go语言可以建立一个代码的内置文档-godoc,可以分享将资源在代码中进行分享。

9.自动垃圾回收

在C和c++程序员花费很多的时间和精力分配和释放内存,R语言则可以消除这种情况,确保程序员可以集中精力进行更多的生产任务。当然垃圾收集也有自身的问题,不过这些都是通过语言来实现的,不需要程序员进行额外的工作。

10. 丰富的库

一个丰富的库对于任何一种语言都是非常重要的,可以通过 the list of packages in Go查看Go语言的库,包括压缩、加密、大量的数据结构、SQL语句、JSON和XML解析、模板、网络等等。

11. 有趣的语言,低门槛学习条件

有一些优秀的程序员可以学习多种语言,他们是非常优秀的。但是作为一个普通人,学习语言还是很痛苦的,但是Go语言有C的基因,学习门槛很低,但是表达能力很强大,几乎支持大多数你在其他语言见过的特性:继承、重载、对象等。

"After Go, programming in anything else seems as difficult as balancing the State of California’s budget." — Charles Thompson

12. 经过线上大规模考验的成功案例

我研究越多,越让我印象深刻。还有很多好处我没有列出来,因为实在是太多了。通过一些具体的案例来展示一下吧。 

iron.io

"In retrospect, it was a great decision to choose Go as it's allowed us to build great products, to grow and scale, and attract grade A talent." — Read Case Study

bitly.com

"We identified early on that Go had all the makings of a language that could supersede some of the places we would have traditionally turned to C and some of the places where we wanted to move away from Python." — Read Case Study

torbit.com

"We process over 6 billion performance metrics a day and our goal is to keep our customers’ data safe forever." — Read Case Study

conformal.com

"In summary, Go makes hacking fun again by doing away with intellectual masturbation and terrible, terrible tools. It compiles super fast and runs at native speeds. Any C expert can pick it up over the course of a few weeks and with its awesome data representation features I believe we could rewrite a product such asCyphertite in 25% as many lines of code." — Read Case Study
原文链接:12 Benefits of Golang For Enterprise Systems   (编译:刘亚琼/审校:仲浩) 


以“云计算大数据 推动智慧中国”为主题的第六届中国云计算大会将于5月20-23日在北京国家会议中心隆重举办。产业观察、技术培训、主题论坛、行业研讨,内容丰富,干货十足。票价优惠,马上报名
热启动控制-Delphi资料 如果隐藏和显示Windows的任务条-Delphi资料 如何把文件删除到回收站中-Delphi资料 如何从任务栏上隐藏应用程序的按纽?-Delphi资料 如何得到Windows 的temp路径-Delphi资料 如何得到WINDOWS的SYSTEM路径-Delphi资料 如何得到上一个激活的组件-Delphi资料 如何得到系统目录-Delphi资料 如何得到执行程序的当前路径-Delphi资料 如何访问一个进程的内存空间-Delphi资料 如何关CD机的门?-Delphi资料 如何关闭外部开启的应用程序-Delphi资料 如何获得系统内存的有关信息?-Delphi资料 如何获取硬盘的ID-Delphi资料 如何检查软驱中的软盘和光驱的光盘是否发生变化。-Delphi资料 如何检查一个驱动器是否就绪?并且不出现错误信息-Delphi资料 如何将Wav文件做到EXE文件里-Delphi资料 如何将你的程序放在Windows启动中-Delphi资料 如何控制Ctrl+Alt+Del键-Delphi资料 如何控制壁纸-Delphi资料 如何控制关闭Windows-Delphi资料 如何屏蔽系统功能键-Delphi资料 如何取得Windows的临时文件目录?-Delphi资料 如何确保你的.exe文件仅运行一次!-Delphi资料 如何让 Windows 模拟按键-Delphi资料 如何让程式只执行一份?-Delphi资料 如何让程序只执行一次?-Delphi资料 如何删除一个控件的子控件-Delphi资料 如何识别显示器当前的分辨率-Delphi资料 如何为Delphi程序添加事件和事件处理器 如何写小执行程序-Delphi资料 如何用VC对麦克风编程哪? 为什么我的win2000的web服务器老是莫名其妙的停掉呢? 各位老大!能不能用DEPHI写一个程序创建NOTES表单???? 怎样把程序做成曲线图的样子? COMBOBOX查找问题? 很菜的,关于窗体的问题 怎么给jbuiler添加oracle驱动程序!!!!! 谁有手写签名和痕迹保存留的例子???能给我一个吗???一定重谢!! 哪有for win的gd库下载?谢谢 我得代码有错误吗!!在线紧急等待 如何用Java访问微软的DDE Server? 在windows xp中怎么建立虚拟服务器呀? 解决问题,马上结贴 xp風格的問題 请问如何让一个表格的边框的宽度和表格内部的线的宽度不一样? 请问wsad和eclipse哪里有下呢? 如何理解下面的程序段 调查:你(单位)愿意花钱买服务端控件吗? 为什么有些网页是繁体字! 我终于知道什么是英雄了! 关于快捷键。 一个丑人的自白(爆笑) 转载 如何实现信息反馈? 怎样使DataGrid固定显示8行??? 一个简单的问题,关于CListCtrl.. C++文件流的怪问题,竟然不能再次打开??? 怎样在win2000 专业版上使用PHP Linux下如何知道有哪些端口未被使用?? 共享上Internet网的另一台机为何一定要配上DNS服务器地址? 来共同研究开发 文件的变量名拼写错误的检查。。。 人生交叉点, 大家进来帮帮忙 在线等待急急!在超链中有的什怎么传不过去? pb还有出路吗? 如何知道有哪些端口未被使用 请教想在页面里调用js文件达到图片轮显效果 如何在动态库中获取调用该动态库的程序的文件名称? 如何获取灰度图中各象素点的灰度值?(在线等待) 请高手帮我解决这个离散余弦变换(DCT)的问题。高分相送。 求助:sql语名查询? 怎么样在输入数据后立即更新表格? 怎么在tablename是一个参数的表中取字段值? 触发器问题?触发器无法通过确认! 请问如何将字符1转化为数字1呢? 怎样在状态栏中显示页面载入进度? WebEasyMail 很好用,不过是asp的,不知道有没有php的收发邮件的程序代码? WebEasyMail 很好用,不过是asp的,不知道有没有php的收发邮件的程序代码? 菜鸟的一问,请帮忙!! 请帮帮忙指一下路 上一个问题还没解决,所以只有找其它的办法。我要实现直接把邮件发到对方的SMTP服务器 类型转换? 如果一个男人愿意帮你口!交代表什么是不是男人在爱上这个女人才会这么做,如果不爱,至少是有感觉的是吗?如果没有感觉他会愿意帮女的KJ吗?大部分男人是不是都会帮女人KJ呢? 红外发射电路为什么调制?调制有什么好处? 极坐标在高中数竟中的应用?相对于参数方程来说有神马优点? 樱桃小口有什么标准?樱桃小口有什么标准吗?看上去小就可以吗?另外有哪些明星是这类型的? He __(do)part-time jobs for many years when he studied adroad. 改病句 看书时间长了,可以闭上眼睛或向远处眺望,以缓和眼睛疲劳 有没有语文文言文点击的答案? bill was fourteen years old and in ninth garde .he had a part-time job which got him up at fiveo,clock he was a newparper boy 中文翻译,急. 就让我眺望远方迷失方向闭上眼睛试着想想你在身边 这是歌词 我想知道这首歌的歌名!女生唱的 谷歌眼镜有什么功能(二) 为什么作者说五壮士的口号声是中国人们坚强不屈的声音? 晚上要让眼睛放松也要眺望远处吗?眺望外面的黑夜?月亮?路灯? Don't miss the great e_____.You can see many old things My mother is an Chinese teacher.Her like her students very much.Every moring,my parents gose towoke ba car.改病句 什么是“水蛭三七散”RT.治疗什么的?能治疗肝硬化吗?哪里可以购买呢? Tom always ask many questions about signs.哪儿错了 I don't like China very much.这句的意思是我不太喜欢中国还是我非常不喜欢中国? 脑血栓后遗症吃三七水蛭方 三七2克 水蛭3克 醋20克 是否会导致患者腹泻 Tom can ____many things.A:does B:do C:doing D:to do He like his Chinese teacher very much.Do you like yours?改错 为什么大象比老鼠大这么多,每分钟心跳却只有30下,而老鼠却有150下?这个数据不一定完全准确,或者应该这么问,为什么恒温动物个体越小,心率越高?3Q Tom collection many sports things 中文翻译, 陕北地区有销售丁烷气体的吗?限陕北地区谢谢 黄粉虫能不能消化塑料? 问你个问题请问什么动物会夏眠?1、青蛙2、海参3、海马 我的作文集题目该叫什么我叫嘉文,希望根据我的名字起一个题目 我知道有陕西,但怎么会有陕北呀? 什么动物会夏眠?A 青蛙 B 海参 C 海马 D 蜥蜴 骑自行车翻越一个坡地,上坡1千米,下坡1千米.如果上坡的速度是25千米/时,那么下坡要保持什么速度才能使全程的平均速度是30千米/时? 现在的陕北等于陕西吗 什么动物会夏眠 一是海参 二是河马 三是青蛙 求激光模组驱动电路图我们准备做模组来卖,但是不会做驱动,谁给指导下? 陕西和陕北陕南和陕北那边比较穷 有些动物为什么会夏眠(如海参) Don't miss the great e_____.you can see many old things.给首字母的填空题 You make a good point的意思是“你的说法很对”吗? 海参和蜥蜴哪种动物夏眠 我要求个激光驱动电路越详细越好, point was 如题,)the point was made,…… 甲、乙两个世园会“长安花”专柜,甲专柜卖出3分之1,乙专柜卖出25%的长安花后,甲专柜的“长安花”比乙专柜的2分之3倍还多40个.已知甲专柜原有“长安花”600个,乙专柜原有“长安花”多少 you can buy many things at great sale翻译 有两袋米,甲袋比乙袋多25%kg.对还是错? 小明坐火车从天津到石家庄,30分钟行了全长的6分之1,50分钟行全长的几分之几? 长时间看书以后,要向远处眺望休息几分钟,这样做为什么可以有效地预防近视眼的发生? 有两袋米,甲袋比乙袋少19kg,如果从乙袋倒入甲袋2kg,这时甲袋的米相当于乙袋的62.5%.两袋米原来各有几kg 今天我在上课突然桌子上爬出只绿色的蜘蛛,.我不知道他是不咬了我.被我同学弄在了地上但没弄死他.他爬不见了.我现在感觉有点恶心.不知道是不是心理作用? 这道题不会,请大家帮忙解答谢谢.过程. 猫每分钟心跳约240次大象每分钟心跳次数约是猫的六分之一,约是老鼠的二十五分之二.老鼠每分钟心跳约几次 石家庄距离北京有多远 坐火车要多久? 同学们在长时间看书后,要想远处眺望休息几分钟,这样可以有效地预防近视眼的发生,从光学的角度分析为什么? 大象什么东西最长 大象什么东西最长. 我家发现了一只绿色蜘蛛,可不可以告诉我它的种类?它的腿是绿色的,它的后面有黄豆那么大,很像鹌鹑蛋.最好有图 我家飞蛾产卵死后一周大约了,可软卵还没孵化都是黑色的卵回第一楼:怎么增加 蚕黑卵何时孵化不得抄袭! 毛泽东在失去毛岸英时想了什么? 有一批水果,分给平均分给甲乙两店,第一天甲卖出2/3,乙卖出3/4,问甲乙水果店各卖出这批西瓜的几分之几 为什么飞蛾产的卵是黑的 家蚕等昆虫在发育的什么期会有蜕皮现象, 关于工艺品的好词好句光工艺品的好词好句 飞蛾产下卵之后该怎么办? 巴武装人员挖地道埋炸药炸伤以军 巴以伊朗推出第一艘观光潜艇 完全由伊朗专获俄罗斯一大型私营网站聘用 斯诺登开获俄罗斯一大型私营网站聘用 斯诺登开德国政府决定婴儿出生证可填写“未确定巴西恢复全国采用4个区时制度浙大用玻璃制造出可在六个方向上隐身的洛杉矶机场枪击案疑犯写有反政府字条 伊拉克总理会晤奥巴马 望美售武对抗“法男子冰川洞穴内冒险攀爬陡峭冰壁(图洛杉矶机场枪击案疑犯写有反政府字条 美83岁珠宝大盗涉嫌“重操旧业”被捕冯小刚留“印”好莱坞“罗莎”加强为强台风 华北平原部分地德内政部长称接受斯诺登帮助 但拒绝为以色列空袭叙利亚 打击俄制导弹库俄罗斯耄耋老汉赤手空拳勇战熊 被扔下德国驳斥美财政部批评 称德经济不存在伊朗推出首艘观光潜艇 完全由伊朗专家德国老人中奖1300万欧元 自称通过日本色情业历史(图)代步可以这么便宜!五万就能上路的电动话剧《邹碧华》在沪正式首轮公演 31《大清江山之龙胆花》或将引发卫视“抢喜乐航3月改装首批天地互联飞机 玩转十部委发文支持网络拼车 滴滴出行回应食物是“天然良药”,不爱吃药吃这些就“二胎”政策下如何投保热点:交通服务公司强制拖车,是为什么凡是炒股票就一定要掌握的九种低吸形态七戒律,做不到就算牛市来了你也还会继罗伯特·帕丁森为Dior2016秋系中医治病,一定要用中医思维两名台湾旅客持“台湾国贴纸护照”被香减肥秘招:让你3天瘦4斤,在日本是最为什么成都楼市的春天是可以持续的?40篇英语短文搞定高考3500个单词有关美团支付的讨论,只是一场字面猜想看过本届奥斯卡所有获奖影片是一种怎样厦门通信展:贵州信息通信业大步跑出“智能血糖仪新选择-糖护士血糖仪使用评Twitter亏损超22亿美元
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘