江门go语言 江门语言学校( 二 )


【Go语言的优势】
可直接编译成机器码,不依赖其他库,glibc的版本有一定要求,部署就是扔一个文件上去就完成了 。
静态类型语言,但是有动态语言的感觉,静态类型的语言就是可以在编译的时候检查出来隐藏的大多数问题 , 动态语言的感觉就是有很多的包可以使用,写起来的效率很高 。
语言层面支持并发,这个就是Go最大的特色,天生的支持并发,我曾经说过一句话 , 天生的基因和整容是有区别的,大家一样美丽,但是你喜欢整容的还是天生基因的美丽呢?Go就是基因里面支持的并发,可以充分的利用多核,很容易的使用并发 。
内置runtime,支持垃圾回收,这属于动态语言的特性之一吧,虽然目前来说GC不算完美 , 但是足以应付我们所能遇到的大多数情况 , 特别是Go1.1之后的GC 。
简单易学,Go语言的作者都有C的基因,那么Go自然而然就有了C的基因,那么Go关键字是25个,但是表达能力很强大,几乎支持大多数你在其他语言见过的特性:继承、重载、对象等 。
丰富的标准库,Go目前已经内置了大量的库,特别是网络库非常强大,我最爱的也是这部分 。
内置强大的工具,Go语言里面内置了很多工具链,最好的应该是gofmt工具,自动化格式化代码 , 能够让团队review变得如此的简单,代码格式一模一样,想不一样都很困难 。
跨平台编译,如果你写的Go代码不包含cgo,那么就可以做到window系统编译linux的应用 , 如何做到的呢?Go引用了plan9的代码,这就是不依赖系统的信息 。
内嵌C支持,前面说了作者是C的作者,所以Go里面也可以直接包含c代码 , 利用现有的丰富的C库 。
go语言是什么Go语言是一种开源的编程语言,被广泛应用于网络编程、云计算、分布式系统等领域 。
go语言的三位作者
Go语言的设计目标是成为一种语法简洁、执行效率高、并发性能强大的编程语言 。它由Google公司研发,于2009年首次发布,并于2012年成为了开源项目 。Go语言具有C语言的表达能力和Python的开发效率,同时还拥有自己独特的语法和特性,如协程、垃圾回收机制等 。因此 , 它被广泛应用于网络编程、云计算、分布式系统等领域,并且越来越受到开发者的青睐 。
Go语言的出现,填补了许多编程语言在并发编程方面的空缺 。它提供了一种轻量级线程模型 , 通过协程(goroutine)的方式,实现了高效的并发编程 。同时,Go语言还支持内置的网络编程和字节序列编解码库,使得网络编程变得更加容易和高效 。在云计算、分布式系统等领域,Go语言也得到了广泛的应用 。例如 , Docker和Kubernetes等开源项目就是用Go语言开发的 。此外,Go语言还具有代码可读性高、编译速度快、编译后的可执行文件体积小等优点,使得它成为了开发高性能、高并发应用的理想语言之一 。
Go 语言到底适合干什么?Go语言主要用作服务器端开发,其定位是用来开发“大型软件”的,适合于需要很多程序员一起开发 , 并且开发周期较长的大型软件和支持云计算的网络服务 。
Go语言融合了传统编译型语言的高效性和脚本语言的易用性和富于表达性,不仅提高了项目的开发速度,而且后期维护起来也非常轻松 。
编译器
当前有两个Go编译器分支,分别为官方编译器gc和gccgo 。官方编译器在初期使用C写成,后用Go重写从而实现自举 。Gccgo是一个使用标准GCC作为后端的Go编译器 。
官方编译器支持跨平台编译(但不支持CGO) , 允许将源代码编译为可在目标系统、架构上执行的二进制文件 。

推荐阅读