如何看待编译原理

     1.随着我进入到大二的学习中我认识到一门叫编译原理的课程,一开始我对这一门课程不是十分的了解,编译原理是什么?所以我看了下书本的前言解释和网上的有关资料,给出的结果是编译原理是计算机专业的一门重要专业课,旨在介绍编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。 编译原理是计算机专业设置的一门重要的专业课程。虽然只有少数人从事编译方面的工作,但是这门课在理论、技术、方法上都对学生提供了系统而有效的训练,有利于提高软件人员的素质和能力。编译原理一直是国内外大学计算机相关专业的重要课程,其知识结构贯穿程序设计语言,系统环境以及体系结构;同时,其理论基础有涉及形式语言与自动机,数据结构与算法等计算机学科的许多重要方面。总体来看编译原理有着承接的作用既联系我们之前所学的知识又让我们深入学习语言的来源。

     2.学习编译原理有什么好处呢?网上的网友给出了我们几点我认为对我们未来学习都十分有用的建议,

     1、可以更加容易的理解在一个语言种哪些写法是等价的,哪些是有差异的
     2、可以更加客观的比较不同语言的差异
     3、更不容易被某个特定语言的宣扬者忽悠
     4、学习新的语言是效率也会更高
     5、其实从语言a转换到语言b是一个通用的需求,学好编译原理处理此类需求时会更加游刃有余
 
     3.不学习编译原理有什么损失?
      不学编译原理,可能永远给各种写编译器的人当奴隶,以为写程序只能按照他们设计的语言哲学来做。学好了编译原理,不一定非要自己写语言,但是至少能把很多其他程序员觉得很酷的东西看得透彻一点。这样子我们连编译语言是如何创造都不知道,只能当用着别人制造的编译语言。
    
     4.如何学好编译原理?
    “
编译原理”一般是本科或者研究生时课程的名字,一般说来这时关注的主要是理论部分,从形式语言和自动机的角度介绍各种文法和自动机的知识,这方面的知识“龙书” [1] 是非常经典的,尤其是前几章。而实践的部分则更推荐看“虎书” ,对现代编译器的结构、词法分析和语法分析实现,代码生成和虚拟机的构造等都有详细的叙述,是非常好的上手指南,我自己写的第一个编译器就是按照虎书做的。多看书是十分重要的,所以有空就去图书馆找有关编译原理的书籍来阅读。

原文地址:https://www.cnblogs.com/guoyaowen/p/5857564.html