Nguyên lý các ngôn ngữ lập trình

62 451 1
Nguyên lý các ngôn ngữ lập trình

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

What’sProgramming Language (PL)Principles of Programming languageProgramming Paradigms and applicationdomainsPragmatic considerationsA brief history of programming languageProgramming language quality

IT6020 (c) PGS.TS. H.Q.Thắng, Dep. of SE 1 IT6020 Nguyên l cc ngôn ng lp trnh Lecturer: Dr. Huỳnh Quyết Thắng, Assoc. Prof at Dept. of Software Engineering, SoICT, HUST Email: thanghq@soict.hut.edu.vn Mobile: 0913536752 Chương 1 – Tng quan v ngôn ng lp trnh v chương trnh dch 2 Content of Lesson 1. Object-oriented programming 2. Compilation, Syntax and Semantic of Programming Language 3. Introduction to Programming Concepts (c) PGS.TS. H.Q.Thắng, Dep. of SE IT6020 3 1. Overview What’s Programming Language (PL) Principles of Programming language Programming Paradigms and application domains Pragmatic considerations A brief history of programming language Programming language quality (c) PGS.TS. H.Q.Thắng, Dep. of SE IT6020 4 1.1. What’s Programming Language What is a programming language?  Abstraction of virtual machine int sum(int[] x) { int sum = 0; n = 0; while (n < x.length) { sum += x[n]; } return sum; } 00101010101010 10101011111010 11101010101110 00101010101010 (c) PGS.TS. H.Q.Thắng, Dep. of SE IT6020 5 1.1. What’s Programming Language What is a programming language?  Donald Knuth (The Art of Computer Programming):  Programming is the art of telling another human being what one wants the computer to do int sum(int[] x) { int sum = 0; n = 0; while (n < x.length) { sum += x[n]; } return sum; } 00101010101010 10101011111010 11101010101110 00101010101010 (c) PGS.TS. H.Q.Thắng, Dep. of SE IT6020 (c) PGS.TS. H.Q.Thắng, Dep. of SE 6 1.2. Overview-Principle of Programming Language Syntax: Basic vocabulary of words and symbols  Grammar for writing programs in the Language: linguistic formalism (context-free grammar) Type systems and semantics: Types of values that programs can manipulate and the meaning (semantics) of these programs. Memory management: Collection of techniques that help us to understand the mechanism of mapping value, data structures, static and dynamic memory. stack and the heap lifetime of variables, object Exception handling: Fundamental techniques of programming language, Kind of events occur unexpectedly during the run of a program IT6020 AT in PMT (c) PGS.TS. H.Q.Thắng, Dep. of SE 7 1.3. Ovier-View Programming Paradigms and application domains Major programming paradigm:  Imperative programming  Object-Oriented Programming  Functional Programming  Logic Programming  Event-Driven Programming  Concurrent Programming Application Domain  Scientific computing  Management information system  Artificial intelligence  System  Web-Centrics AT in PMT (c) PGS.TS. H.Q.Thắng, Dep. of SE 8 1.4. Overview-Pragmatic considerations Considerations for programming language  Architecture constrains  Contextual constrains  Virtual machines and interpreters  Standard  Legacy systems AT in PMT (c) PGS.TS. H.Q.Thắng, Dep. of SE 9 1.4. Overview-Pragmatic considerations Architecture constrains: programming language are designed for computer. Most computer designs over the past several decades have followed the von-Newman model. Many programming languages are well-matched with this architecture. CISC, RISC: Lisp machine AT in PMT (c) PGS.TS. H.Q.Thắng, Dep. of SE 10 1.4. Overview-Pragmatic considerations Contextual Constraints: programming languages are designed to satisfy other constrains imposed by the context in which they are used: the application area, the operating system, the network, and preference of the programming community. . Programming  Functional Programming  Logic Programming  Event-Driven Programming  Concurrent Programming Application Domain  Scientific computing  Management information system  Artificial intelligence . organizations that oversee and maintain standard for programming languages  American National Standards Institute (ANSI)  International Standard Organization (ISO)  Information about language. SE 6 1.2. Overview-Principle of Programming Language Syntax: Basic vocabulary of words and symbols  Grammar for writing programs in the Language: linguistic formalism (context-free grammar) Type

Ngày đăng: 28/07/2014, 00:32

Tài liệu cùng người dùng

Tài liệu liên quan