《Kotlin核心编程》 ——1.2.2 复合但不复杂
【摘要】 本节书摘来自华章计算机《Kotlin核心编程》 —— 书中第1章,第1.2.2节,作者是水滴技术团队 。
1.2.2 复合但不复杂
那么,Scala真的复杂吗?我们不知听了多少次类似这样的抱怨。在搞明白这个问题之前,我们需要先弄清楚到底什么是“复杂”。在英文中,复杂一词可以联想到两个单词:complex和complicated。实际上它们的含义截然不同,更准确地说,complex更好的翻译是“具有复合性”。
Nicolas Perony曾在Ted上发表过一次关于“复合性理论”的演讲。
什么是复合性?复合并不是复杂。一件复杂的事物是由很多小部分组成的,每一部分都各不相同,而且每一部分都在这个体系中有其自身的确切作用。与之相反,一个复合的系统是由很多类似的部分所组成的,而且(就是因为)它们之间的相互影响形成了一种宏观上一致的行为。复合系统含有很多互动的元素,它们根据简单的、个体的规则行动,如此导致新特征的出现。
马丁教授曾发表过一篇名为《简单还是复杂》的文章,表达过类似的观点。如果对搭积木这件事情进行思考,摩比世界提供了固定的方案,而乐高则提供了无穷的选择。然而,前者的零件种类和数量都比后者要多得的。类似的道理,编程语言可以依靠功能累加来构建所谓的语法,同样也可以通过简单完备的理论来发展语言特性。在马丁教授看来,Scala显然属于后者,它并不复杂,而且非常简单。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)