首页 > 后端开发 > Golang > 正文

golang是面向对象吗?

coldplay.xixi
发布: 2020-07-18 16:29:58
原创
4972 人浏览过

golang不是面向对象的,go是面向过程的语言,也不是函数式编程范式,其表现在缺少箭头函数,需要显式声明lambda,而且不讲究纯函数和immutable。

golang是面向对象吗?

golang不是面向对象的,go是面向过程的语言

没有class,一般oop特征明显的语言会定义出class关键字,而且很多会强制要求你把代码全部塞入class里面去,以实现万事万物都是对象,甚至包括main函数,都做成static放进去

也不是函数式编程范式,其表现在缺少箭头函数,需要显式声明lambda,而且不讲究纯函数和immutable

go的代码不讲究封装和整理,很多源码都是几千行代码呆在里面,表现出了典型的过程式语言的基本特征

多数脚本语言,c等都是过程式的,go的语言特性跟这些语言很相似,只是增加了gc,goroitine等常用工具而已,作者本身就对oop,fp等缺乏了解,只是根据c的经验,整理出了一些常用的工具,然后将其放到语言的runtime中去罢了

你说可以做出类似效果,那就犹如java你全部用static也能写得跟c类似一样,那并不是一个语言范式的基本特征

相关学习推荐:Go语言教程

以上是golang是面向对象吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!