
编程回忆录:自然语言与编程语言
大多数人将学习编程语言误认为是软件开发人员或程序员。 学习一种编程语言是关于掌握语法和语义,用语表达事物的方式及其含义。 开发软件要求您了解如何在给定资源内应用编程语言以实现某些目标。 在自然语言术语中,学习编程语言就像学习英语,而编程和系统开发就像写散文或诗歌一样。
自然语言比编程语言更具表现力。 如果我告诉您“给我”,那么如果您不看我的话,您可能会抬头看我指的是什么,然后将其跳过。 相比之下,开发人员必须告诉机器人如何接收指令,如何对指令进行响应以及如何对不同的情况(最可能是一个接一个)进行响应。 自然语言在编程语言方面的优势在于优雅地处理歧义并将接收到的信息置于上下文中。
继续举例,如果我继续说:“不是那个,那一个”,您很可能会希望确定我所指的位置。 但是,如果只剩下一件事,则不必查找,而只需跳过剩下的事情。 如果有太多项目无法一一选择,那么您将问“哪一个?”,在编程语言中,必须以某种方式将这种通用性转换为确定性的指令集。 此示例说明了将信息放入上下文以及如何处理自然语言使用中固有的歧义和抽象思维。
一旦掌握了句子的构造,下一步就是学习如何撰写段落。 在散文中,一段包含以某种方式相关的句子,在诗歌中它可以被用来获得意义,这是一首诗。 然后可以用来创作小说,中篇小说,诗歌和短篇小说。 学习编程语言更像是学习如何构造句子并将其组织成段落。 编程是关于使用这些知识来写小说,诗歌或短篇小说。
但是,程序员必须遵循比诗歌中存在的规则更严格的规则,以使他们的愿景变为现实。 在编程中,一个放错位置的字符足以破坏您的代码或系统。 同时,您需要处理各种过程的各种情况,这可以看作是处理编程语言中歧义的一种方式。
因此,编程更像是在遵循诗歌规则的同时写散文。 突然,想出16个小节变得不再那么容易了。 就是这样:优秀的程序员使它看起来变得如此显而易见变得如此容易。 但是,除了他们之外,当然很少。 秘密在于掌握软件开发技能。