首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我需要理解编程语言的内部结构吗?

我需要理解编程语言的内部结构吗?
EN

Software Engineering用户
提问于 2013-08-08 19:37:44
回答 3查看 1.7K关注 0票数 11

我是Python的初学者,到目前为止我真的很喜欢它。我经常想到的一个问题是,我是否需要理解并学习编程语言的内部(如我的例Python)。您可能知道,Python本身是用C编写的。

所以我的问题是:要想精通或流利地使用一门编程语言,必须深入到什么程度。我把这个问题比作“自然”语言。我不知道我的母语语法的每一个细节,但我能够用那门语言表达自己,没有任何问题。这就是我说我能流利地说一种语言的时候。这也适用于编程语言吗?

EN

回答 3

Software Engineering用户

发布于 2013-08-08 19:53:58

为了用编程语言编写程序,您不需要了解编程语言的内部结构。然而,你对语言的理解越好,你的程序就会越好。

  1. 数据结构和算法的知识将帮助您选择最适合您特定任务的数据结构。有些语言内部拥有这些数据结构。
  2. 理解语言的“文化”有助于您编写遵循“最佳实践”的程序,使其更易于理解、更易于维护和更好的执行。
  3. 为该语言编写编译器(或为该语言编写另一种语言的编译器)可以使您深入了解该语言,并改进您的程序,而不仅仅是普通的程序。
  4. 精通其他语言(尤其是不同范式的语言)可以使您成为更好的初级语言程序员,因为您可以将这些技能和工具应用到您的主要语言中。

作为推论,你不需要知道任何关于你的电脑的东西就可以在上面写程序。但是,知道你的电脑是如何工作的,使你更善于为它编写程序。

票数 8
EN

Software Engineering用户

发布于 2013-08-08 19:54:28

我不知道我的母语语法的每一个细节,但我能够用那门语言表达自己,没有任何问题。这就是我说我能流利地说一种语言的时候。这也适用于编程语言吗?

简单地说是的。只要你能很好地表达自己(并理解他人),那么你就被认为是一门流利的语言。

尽管如此,对于一些工作来说,简单地说流利是不够的。某些类型的作者,需要模范的公共演讲技能的工作,以及一些专注于语言的学者,需要“比流利”更好地了解它。同样,一些程序员的专业要求了解语言内部的知识,但是对于大多数人来说,知道编程语言相当于如何要求她的数量或点一个芝士汉堡就足够了。

票数 7
EN

Software Engineering用户

发布于 2013-08-08 19:53:00

我将“精通”一种语言定义为:

  • 了解大多数语法,并掌握足够的知识来研究您在其他人的代码中发现的任何新特性。
  • 具备任何标准库和/或框架的工作知识,以及查找、阅读和理解任何需要使用的新文档的能力。
  • 理解并能够使用通用的习语和命名约定。

请注意,语言的工作方式不在这个列表中,但是有大量的“学习能力”。至少对内部因素有粗略的了解是有帮助的,但不一定要精通。然而,充分了解它们,使您能够理解您正在阅读的文档中的任何引用,这是一个非常好的主意。

例如:我知道VB.NET和C#都被编译成.NET的IL (中间语言),然后为目标框架编译。我对IL不太了解,但当我看到它的时候,我就足够认识它了,并且从一般意义上理解它如何处理某些事情。我认为自己精通C#,但不精通VB.NET,尽管“内部要素”是一样的,而且我对它们的理解也不深。

票数 0
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/207680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档