docker 采用什么语言编写的?
docker采用的是go语言编写的,该语言一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言,常用于web程序开发,并且具有成熟的web开发框架,如beego、gin、iris等等。
go语言描述
go的语法接近c语言,但对于变量的声明有所不同。go支持垃圾回收功能。go的并行模型是以东尼·霍尔的通信顺序进程(csp)为基础,采取类似模型的其他语言包括occam和limbo,但它也具有pi运算的特征,比如通道传输。在1.8版本中开放插件(plugin)的支持,这意味着现在能从go中动态加载部分函数。
与c++相比,go并不包括如枚举、异常处理、继承、泛型、断言、虚函数等功能,但增加了 切片(slice) 型、并发、管道、垃圾回收、接口(interface)等特性的语言级支持。go 2.0版本将支持泛型,对于断言的存在,则持负面态度,同时也为自己不提供类型继承来辩护。
不同于java,go内嵌了关联数组(也称为哈希表(hashes)或字典(dictionaries)),就像字符串类型一样。
go 语言特点
go语言是google公司开发的一种静态的,编译型并自带垃圾回收和并发的变成语言.
go语言的风格类似c语言,其语法在c语言的基础上进行了大幅度的优化,去掉了不需要的表达式括号,循环也只有for一种表示方法,就可以实现数值,键值等各种遍历.因此, go语言上手非常容易.
go语言最具有特色的特性莫过于goroutine. go语言在语言层可以通过goroutine对函数实现并发并行. goroutine类似于线程,但并非线程, goroutine会在go语言运行时进行自动调度.因此,go语言非常适合用于高并发网络服务的编写.
推荐教程:《go教程》
以上就是docker 采用什么语言编写的?的详细内容。