Topic 3 : Computer Programs and Programming Language

시작하기. 무료입니다
또는 회원 가입 e메일 주소
Topic 3 : Computer Programs and Programming Language 저자: Mind Map: Topic 3 : Computer Programs and Programming Language

1. Program Language Paradigms

1.1. Program Paradigm

1.1.1. - A model class for programmingl language that share common characteristics and differences

1.2. Common Programming Paradigms

1.2.1. - Imperative paradigm

1.2.1.1. * Sequential

1.2.1.2. * Variable memory locations

1.2.1.3. * To change the values of variables

1.3. Imperative Paradigm

1.3.1. - Describe how computer achieve solution

1.3.2. - Ex : C , Pascal , FORTRAN , ...

1.3.3. - Key features :

1.3.3.1. * Stored memory

1.3.3.2. * Mutable variables

1.3.3.3. * Sequencing , selection & iteration

1.3.3.4. * Pointers

1.4. Object Oriented Paradigm

1.4.1. - Imperative / procedural style with added data & code abstraction & encapsulation

1.4.2. - Concept that changed the rules in computer program developement

1.4.3. - OOP organized around object rather actions , data rather than logics

1.4.4. - Examples of language : C++ , SmallTalk /7 JAVA

1.4.5. Key features :

1.4.5.1. * Abstraction

1.4.5.2. * Encapsulation

1.4.5.3. * Inheritance

1.4.5.4. * Polymorphism

1.5. Logic Paradigm

1.5.1. - Declarative & relational style of programming

1.5.2. - Example language : Prolog

1.5.3. Key features :

1.5.3.1. * No mutable variable

1.5.3.2. * Statements are logical predicates or assertions

1.5.3.3. * Every statement can either be succeed or fails

1.5.3.4. * Few explicit control constructs

1.5.3.5. * Recursion

1.6. Functional Paradigm

1.6.1. - Concept of functions in mathematics

1.6.2. - Lambda calculus

1.6.3. - Written compact , but run slowly & require a lot of memory

1.6.4. Example language : Haskell , ML , LISP & Scheme

1.6.5. Key features :

1.6.5.1. * No mutable variables

1.6.5.2. * Everything is an expression

1.6.5.3. * Everything is function

1.6.5.4. * No iteration

2. Programming Language

2.1. - A system signs used of communicate a task/algorithm to a computer causing the task to be performed

2.2. - Task to be performed called computation

2.3. - Set of instruction , data and rules

2.4. - 3 levels of programming language

2.4.1. * Machine Languge

2.4.2. * Low level language (Assembly language)

2.4.3. * High level language

3. Machine Language

3.1. - Representation of a computer program that only can understand by the computer

3.2. - Instruction : Binary code

4. Assembly language

4.1. - Representation of machine language of a specific processor

4.2. - Converted a machine code by an assembler

4.3. - one to one correspondence

4.4. - Slow and error-prone but efficient for hardware performance

5. Computer Programs

5.1. - A set of instruction the computer needs to follow to process the data into information

6. Programming Aplication Domains

6.1. Scientific Application

6.1.1. Developed FORTRAN

6.1.2. -Included control structures , conditions , and input/output

6.2. Artificial Intelligence

6.2.1. - Deals with emulating human-style reasoning on a computer

6.2.2. - Involve symbolic computation , mostly names not numbers

6.2.3. - Common data structure is the list

6.2.4. - Requires more flexability

6.3. Systems Programming

6.3.1. - Assembly languages were used age ago because of its power and efficiency

6.3.2. - CPL , BCPL and C++ developed

6.4. Web software

6.4.1. Markup - annotating a document in a manner

6.4.2. Scripting _ enable the script to run this commands include control structures such as if-then-else & do-while

6.4.3. General purpose - used for a wide range of programming jobs

7. Elements of Computer Programs

7.1. - Input

7.2. - Processing -> Storage

7.3. - Output

8. High level Language

8.1. - English like programming language

8.2. - one to many correspondence

8.3. - Easier program than assembly language

8.4. - Used descriptive names

8.5. - Can be described using familiar symbols