借用语言学中的术语,在某种程度上,哪些编程语言在某种程度上是相互可理解的?为了澄清,假设我们知道编程语言x,但我们碰巧需要阅读y语言的一些代码。流利的或甚至是某些编程语言的基础知识是否有助于理解我们不知道的其他语言的语法?
发布于 2015-03-14 11:45:41
作为一个精通大约20种不同计算机语言的人,我可以毫不犹豫地说,它绝对有帮助。我想说的是,它并没有以任何方式将自己限制在一种语言的子集上,但它在某些语言之间的程度肯定是不同的。
例如,了解Java,我几乎没有尝试就学会了C#。概念和感觉都很相似,这是一个微不足道的跳跃。然而,学习函数式编程语言LISP是一个非常不同的过程,需要我以不同的方式思考才能真正掌握它。我会将其等同于先学英文后学写西班牙语,然后再学写中文的区别。拼音字母的概念在人们学习它的容易程度上有很大的不同。
而且,就像许多语言是从拉丁语进化而来的一样,许多计算机语言也是从共同的根源演变而来的,比如C。所以,就像语言一样,你可以看到共同的祖先。
发布于 2015-03-14 11:59:34
我在日常生活中使用JavaScript和Ruby,但我也可以查看一些objective-C并弄清楚它想要做什么(即使我自己不会写它)。一般来说,你知道的语言越多,学习另一门语言就越容易。
计算机语言被组织成各种类型。就像真正的语言一样。如果你学过一种方法,其他同类的方法就更容易了。例如,如果你只会说葡萄牙语,你可能会比说中文的人理解更多的西班牙语。如果你会说中文,你就能读懂一些日文汉字,因为它们起源于同一事物。
具体地说,计算机语言分为过程语言(C、Fortran)、面向对象语言(C++、Ruby)和函数式语言(Haskell、Closure)。当然,一些语言借用了其中几个(JavaScript)的元素,所以有一些灰色的阴影。
tldr:是的,了解一种语言可以帮助你理解另一种语言。
https://stackoverflow.com/questions/29045192
复制相似问题