Go教程:第一篇介绍Go

· · 597 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

第一篇: 介绍

本文是我们《Golang系列教程》开篇文章,文章中讲介绍Go语言,并讨论Go和其他语言之间
的优劣性。

介绍

Go 也被称为Golang 是一个由Google开发的开源,编译型,静态类型的语言。关键的创始人有:
Ro Pike,Ken Thompson 和Robert Griesemer。Go于2009年向公众开放。

Go 是一个通用的语言,它提供了 简单的语法,健壮的标准库。最重要是:Go能够创建高可用,可扩展的web应用。
当然了,Go也能用于开发命令行应用,桌面应用以及移动应用。

Go的优势

在众多编程语言如: Python,ruby,nodejs.... 云集的情况下,为什么要选择Go作为服务端的编程语言呢?

这里列出来一些,我在选择Go时,所带来的好处。

简单的语法

语法简单,精炼,没有冗余的非必需特性。这就使得很容易编写易读、可维护的代码。

易于编写并发程序

并发作为Go语言的内置特性。总之,编写多线程的程序是小菜一碟。并发是由Gorouting和channel来实现的,
我们在下面的教程中,将会对其进行讨论。

编译型语言

编译型语言是相对于解释型语言存在的,编译型语言的首先将源代码编译生成机器语言,再由机器运行机器码(二进制)。像C/C++等都是编译型语言。

Go 是编译型语言,它的源码直接被编译成本地二进制。这是一些解释型语言:如,JavaScript和nodejs所缺失的。

快速编译

Go的编译器很令人赞叹,并且 相比于之前,它被设计的越来越快了。

静态链接

Go语言编译器支持静态链接。所有的Go代码都可能被静态地链接成一个大的二进制程序,并且轻松地发布到云服务上,而无需担心依赖问题。

Go 工具

Go的工具集特别值得一提。Go和其对应的一大批强大的工具集相伴而生,这样就保证了开发者可以写出更好的代码。
常用的工具有:

  • gofmt -gofmt 可以用于自动地格式化go源码。它使用tab缩进,使用空格对齐。

  • vet -vet可以分析go源码,并且报告可能的可疑代码。vet报告的并不是真实的问题,但是它却有能力捕捉非编译期错误,
    例如: 在使用Printf时不正确的格式区分符。

  • golint -golint 可用于识别代码中的样式问题。

垃圾回收

Go使用垃圾回收期进行垃圾回收,因此,可以很好地自动进行内存管理,开发者不用担心内存管理问题。这也让编写并发程序
变的简单。

简单的语言规范

Go语言的规范非常简单,全部的规范可以在一页中列出,你设置可以使用它编写你自己的编译器。

开源

最重要的是,Go是一个开源项目,你可以参与并贡献自己的一份力量。

使用Go构建的产品

下面是一些使用Go开发的比较流行的产品。

  • Google 使用Go开发了kubernete

  • Docker ,世界上最著名的容器平台也是使用Go开发的

  • Drobox 也是用Go改造了它的关键组件。

备注
翻译自


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

本文来自:简书

感谢作者:

查看原文:Go教程:第一篇介绍Go

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

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