4. 编程语言中的中流砥柱 | 忽软忽硬

忽软忽硬
4. 编程语言中的中流砥柱 | 忽软忽硬
Loading
/

8人评论了“4. 编程语言中的中流砥柱 | 忽软忽硬”

  1. 哈哈, 栋哥三兄弟,这个笑死我。
    顺便问下栋哥 的 Java 书什么时候出,还有 Java 的智能象棋教程。
    还有 TG 的汉牛充栋可以发一下链接吗(如果可以的话就回我邮箱吧)
    ^_^ !

  2. 我就喜欢python,然而学的也是半知半解。
    黑五今晚就会到来。去namecheap 屯点域名吧,便宜的很,优惠97%。。。

  3. 听栋哥节目很久了,今天刚好聊到我熟悉的领域,忍不住过来插两句嘴。

    栋哥似乎对函数式编程不太熟悉,博客里提到的内容放到命令式编程、面向对象编程下,基本都正确,但放到函数式下面,很多就不对了。

    最开始栋哥说 Perl,C++ 和 Java 是属于什么语言特性都要的语言,这个就不对,函数式言语的大部分特性它们就没有。C++ 和 Java 虽然近些年加了 lamda 这样的函数式特性,但和 Haskell 这种纯函数式语言还差的很远。

    另外您提到「所有的编程语言都要支持程序的控制流程」,但这个在函数式编程里是非常不同的。我不是说函数式语言里面就完全没有 control flow,但在函数式里面更多的是 what to do 而不是 how to do,所以这个也是和命令式和 OO 的语言非常的不同的。

    然后是面向对象。我觉得近些年业界开始对面向对象开始有一个反思,大家不再觉得面向对象是万能的了,特别是继承,现在大家普遍觉得组合要优于继承。所以现在新的编程语言如 Rust,Go 之类的,都不支持继承了。所以从这个角度上讲,我觉得 Go 永远不会去支持那些面向对象的特性。

    最后指出一个您的一个错误哈,您说 Swift 是动态语言,但实际上不是的。Swift 是一门带类型推断的静态语言,所以在写代码的时候不需要强制写出变量的类型,但编译器会根据上下文自动去推断变量的类型,这一切都是在编译期而不是运行时发生的,所以 Swift 仍然是静态类型的语言。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部