怎么看待go语言?
首先声明一下,本人是go语言的骨灰级粉丝,下面表述难免偏向于主观,谨慎阅读。
我觉得最应该说就是go语言的goroutine,这个机制使得该语言特别适合于网络编程和io较多的场景,它从编程语言层次很好解决了多线程编程的难点,比如传统线程内存消耗大,编程难度高等问题。在go语言精心的设计下,我这种小白也可以整天大刀阔斧的多线程编程了,难度真的降了好几个数量级。
再着,我喜欢它独特的编程模式。他抛弃了大多数面向对象语言的那种声明类的语言,采用结构体加方法的形式组织类型。这使得该语言倾向于”不伦不类”,它既有面向对象语言的特点,又有面向过程需要的特点,我相信这样的结果正恰恰是go语言设计者的初衷。他们都是有着丰富的编程经验的世界级工程师,他们对此有着自己深刻的认识以及经验。因此,他们将语言设计为这样。
其中有一个让我拍案叫绝的小设计是,它们去掉了无用的while循环,直到这里,我才明白了代码到底可以多简单,这么多年的while语句原来是废物,它们只是让一门语言变得更加复杂而已。
最后,go语言真的值得一学!