首页 > 代码库 > 程序员的三大浪漫之一——编译原理
程序员的三大浪漫之一——编译原理
编译原理是计算机专业的一门重要专业课,旨在介绍编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。 编译原理是计算机专业设置的一门重要的专业课程。虽然只有少数人从事编译方面的工作,但是这门课在理论、技术、方法上都对学生提供了系统而有效的训练,有利于提高软件人员的素质和能力。
我认为,既然编译过程是将一种语言翻译为另一种语言的计算机程序的过程,顾名思义,编译原理就是为我们解释计算机是如何将一种语言翻译成另一种语言这个问题而生的。
编译原理很难,在网上看到这句话:“知道你写的程序编译器是怎么编译的,学好了以后可以开发编译器(那要很牛很牛)。更现实点的好处是学会使自己写的程序更优,提高程序的效率。”我觉得很受用。的确,编译原理是锻炼程序员的思维的!它不会交给你怎么编程序,但是,你会从中学到怎么想问题。这门课很值得学习,且,技多不压身。学好编译原理可以基本囊括所有需要的技术,锻炼脑力,同时可以有广泛应用,更本质上说,让你理解你天天用的语言,这是优秀程序员需要具备的专研精神 。“程序语言和编译器是连接人和机器的桥梁,本质是个以人为本的学科分支,是在寻找程序员写得爽和机器跑得快之间的平衡点,因此不仅仅是一套数学模型一组自动机。”我想,如果能够学好编译原理,程序员可以解决很多编译过程中产生的疑惑,豁然开朗的那一刻,便是求知过程所得到的最好的回报。
大家对于学为何要学编译原理这个问题褒贬不一,有人说这门课程太难啃了,而且以后出来工作的时候基本用不到。但是,有学不一定有用,不学肯定没用。编译原理是一门基础的课程,基础的东西学好了,以后用的时候就知道基础的重要性了。
如何学好编译原理?我也很想知道怎样学效率高一点。按照我以往的学习模式,我认为:(1)上课跟上老师的步伐,课前预习,课后复习;(2)多从网上或图书馆找一些关于编译的书来学习。我觉得,感不感兴趣这个问题很重要,如果感兴趣的话,我想学习的过程中就不会觉得有那么辛苦了,兴趣是提高学习效率的一个捷径。
程序员的三大浪漫之一——编译原理