Compiling principle is an important specialized course in computer science, which aims to introduce the general principle and basic method of compiling program construction. The content includes language and grammar, lexical analysis, parsing, grammar-guided translation, intermediate code generation, storage management, code optimization, and target code generation. The compiling principle is an important specialized course of computer professional setup. Although only a few people engaged in the work of compiling, but this course in theory, technology, methods to provide students with systematic and effective training, to improve the quality and ability of software personnel. This course focuses on the compiler aspects of the production principle and technical problems, it seems that the basic field of computer is not close, but the compilation principle has been as a compulsory course of undergraduate courses, but also become a postgraduate entrance examination must be tested content. Compiler theory and technology is essentially an algorithmic problem, of course, because this problem is very complex, its solution algorithm is relatively complex. We learn the data structure and algorithm analysis is also speaking of algorithms, but the basic algorithm, in other words, the introduction of the algorithm, and the compiler principle of this course is to focus on a more focused solution of an algorithm. In the the 1950s, compiler writing has been considered a very difficult thing, the first Fortran compiler said it took 18 years to complete. While people are trying to write compilers, many theories and techniques related to compiling are born, and these theories and techniques are more valuable than the actual compilers themselves.
You can use syntax analysis to analyze whether a user upload contains code to make your site more robust. Parses and decomposes user-entered SQL statements to understand whether it is harmful and whether there is SQL injection. In the business software settlement aspect allows the user to enter conditional expressions and arithmetic, allowing the user to customize the settlement formula or condition to make the software a grade. You can even implement your own created programming language.
Do not learn the principle of compiling, may always give a variety of compiler to the people as slaves, that writing programs can only follow the language philosophy they designed to do. Learn the compiler principle, not necessarily to write their own language, but at least can be a lot of other programmers think cool things to see a bit, will not be the design of programming language to deceive too much. This is still very important, is the life of the Code workers and the future of the CTO difference.
Be prepared, do not fear, the book did not understand it does not matter, to see a few times, or even dozens of times, not a word: book read times, its righteousness from See, but also combined with the textbook behind the exercises to do more thinking and analogy, these are the most basic way, in the process of learning to sum up their own difficulties and doubts, and then , DIY a virtual machine, on the basis of the virtual machine to develop their own language and compilers, to strengthen the practice, of course, do not need you to do these how complex, the main purpose is to combine the theory of learning, is to more deeply understand the books of those abstract things; but who dares to say, You can't invent a new language and a new compiler for the popular world in the future? After understanding what this article says, you can focus directly on the study of coding (LEX,YACC, etc.), and then to cooperate with the theory of learning, you can ignore some of the content during the first learning process, and then come back to learn later.
Views on the principles of compilation