Dijkstra在这里写道:
除了数学上的偏爱之外,对母语的掌握也非常出色,这是一名合格的程序员的最重要资产。
我不明白这句话的后半部分。您能否解释或阐述?
PS我在印度长大。我在家里说孟加拉语。我在自己居住的社区讲马拉地语;印地语是一种国家语言,口语非常广泛,所以我知道。在学校和大学里,我都以英语为第一语言教我。当然,现在我想使用多种语言,我必须承认我对任何一种语言都没有掌握。这真的影响我的编程能力吗?如果是,怎么办?有什么解决方案吗?
Dijkstra在这里写道:
除了数学上的偏爱之外,对母语的掌握也非常出色,这是一名合格的程序员的最重要资产。
我不明白这句话的后半部分。您能否解释或阐述?
PS我在印度长大。我在家里说孟加拉语。我在自己居住的社区讲马拉地语;印地语是一种国家语言,口语非常广泛,所以我知道。在学校和大学里,我都以英语为第一语言教我。当然,现在我想使用多种语言,我必须承认我对任何一种语言都没有掌握。这真的影响我的编程能力吗?如果是,怎么办?有什么解决方案吗?
Answers:
尽管我同意alex和quick_now所说的内容,但我相信可能会有不同的说法。这是我自己的理论,我不认为Dijkstra是同一回事。
什么是“语言的掌握”:它是一种能力,它可以构成语言的基本组成部分,并将其放入具有建设性的,有用的短语和句子中。字母和字符本身是没有意义的。您需要将它们放在一起并从中获得意义。言语本身就毫无意义。只有根据语法和语法将它们按适当的顺序排列,它们才能表达出具体的想法。
在计算机编程中不是完全一样吗?我们将一些关键字和符号放在一起,并从中制作出切实可行的东西。编程语言就像自然语言一样,具有符号和语法。精通一种编程语言,需要能够将这些(单独无意义的)符号和规则放在一起,以使某些事情有意义和有用。
我相信这意味着一个人学习人类语言的能力和计算机语言之间存在直接的关联。两者都需要相同的人类能力和思维能力。看看你的同事,你会发现那些编程技能差的人也不会像其他人那样清楚地说或写。那些擅长选择人类语言的人也必须具备成为优秀程序员的技能。
引言说,您需要了解您的母语(例如您的情况下的马拉地语)。这是一项重要资产。
心理学家通常认为,精通某种语言可以帮助您更好地表达自己的想法。有人说我们所做的所有思考都局限于我们的主要语言。语言(及其知识)越丰富,人就可以更好地交流和组织思想。
了解多种语言也有助于理解不同的思维模式。
从整体上看,这是一个有趣的清单,但可以追溯到1975年。可以说,在这段时期内,时代在一定程度上发生了变化,使那部分宗旨的某些部分过时了。
我认为程序员应该具备的一项关键技能是有效沟通的能力。这不仅仅是解释。这意味着理解。不管您的工作语言是什么,以英语为母语,尽管不是您的母语,但那些难以有效使用母语进行交流的人在其他任何地方都不会感到更轻松。
一般而言,可以说,无论您的生活水平如何,如果您的母语遇到困难,您在日常生活中都会处于不利地位。
我不会精通他的精通的意思-根据您的上述贡献,我怀疑您对英语的掌握程度足够,并且据此推断,您可以使用其他语言进行有效交流。
我怀疑他指的是对人们想要的东西有很好的理解-换句话说,良好的言语交流能力。
(对此我偏颇:在编程的背景下,这部分意味着有时您需要了解人们不说的话,或者他们说的话,但不是很清楚。)