Download presentation
Presentation is loading. Please wait.
Published byMyron Moore Modified over 9 years ago
1
Programming Languages CPS120: Introduction to Computer Science Lecture 5
2
Programming Languages A programming language is a set of rules that provides a way of telling a computer what operations to perform.
3
Levels of Programming Languages Machine language Assembly Language High Level Languages Fourth Generation Languages (4GL)
4
Machine Languages different for each computer processor 0100 001101100000001101110001 001011000110000 01110 111001...
5
Assembly Languages different for each computer processor mainproc pay mov ax, dseg mov ax, 0b00h add ax, dx mov a1, b1 mul b1, ax mov b1, 04h
6
High-Level Languages Higher Level Languages Use traditional programming logic where the programming instructions tell the computer what to do and how to perform the required operations. 4GLs Use high-level English-like instructions to specify what to do, not how to do it.
7
Interpreter vs. Compiler Interpreter Translates instructions to machine code line-by-line. Compiler Translates the entire program to machine code before running it.
8
Types of Programming Languages Machine language Procedure-oriented languages Object-oriented languages Event-driven languages
9
Early Language History FORTRAN (short for Formula Translator, developed in the 1950s by IBM In 1958, a language called ALGOL (Algorithm Language) was developed COBOL (Common Business Oriented Language) was created in 1960 to serve as the primary language for large-scale programs In 1964, the BASIC language (Beginners All-Purpose Symbolic Instruction Code) was first used In 1965, a language called PL/I was developed in hopes of being everything to everyone. PL/I proved to be too complex. In the late 1960s, Niklaus Wirth developed a teaching language called Pascal.
10
Later Language History Ada, which was developed in 1983, is large and complex. Smalltalk is graphical and object-oriented. Concepts developed with Smalltalk were important to the development and continued development of languages like C++ and Java The C language was derived from ALGOL. C++ is C with the addition of object-oriented concepts.
11
Procedure-Oriented Languages FORTRAN COBOL Pascal C Ada
12
OOED Languages Object-oriented languages Smalltalk C++ Ada 95 Event-driven languages Visual Basic most Visual languages
13
What Can a Program Do? A program can only instruct a computer to: Read Input Sequence Calculate Store data Compare and branch Iterate or Loop Write Output
14
Fundamental Programming Concepts Assignment of values to a variable Iteration (Looping) Over a set of set of statements With respect to a logical expressions (conditions) Delegation of sub-tasks to functions / procedures
15
The Structure Theorem The Structure Theorem states that any algorithm can be built from three basic control structures. One-after-another (Sequence) Decision-making (Selection) Making choices between 2 or more alternatives Repetition (Iteration) Concerned with repetitive tasks (and the termination conditions of loops)
16
C++ Control Structures 1. "Sequence statements" are imperatives 2. "Selection" is the "if then else" statement – AND, OR, NOT and parentheses ( ) can be used for compound conditions 3. "Iteration" is satisfied by a number of statements – "while" – " do " – "for" 4. The case-type statement is satisfied by the "switch" statement. – CASE statements are used for most non-trivial selection decisions
17
Programmer Productivity Tools Modular Programming Structured Programming Object-oriented Programming
18
Modular Programming Large programs are divided by functional parts into subroutines Strong cohesion Loose coupling
19
Structured Programming Composed of sequence, decision (selection), and repetition (looping or iteration) structures Structured program languages lend themselves to flowcharts, structure charts, and pseudocode. Structured programming languages work best where the instructions have been broken up into small, manageable parts. Looks at a problem as procedures Data are maintained separately from data
20
Structured Program Rules 1. Use only sequence, decision, and repetition 2. Only one entrance into and one exit from a structure 3. Connectors only allowed when continuing processing from one column or page to another 4. Decision and repetition structures can be nested 5. Only one STOP instruction is permitted. It must be in the MAINLINE routine
21
Structured Programming Advantages Standard method for solving problems GO-TO less Easier to test and debug Written by more than one programmer Reusability Thrashing minimized
22
Object-Oriented Programs Developed to respond to programming issues that structured programming did not adequately address 1. Rarely possible to anticipate the design of a completed system before implementation 2. GUIs were difficult to develop in traditional procedure- oriented languages 3. Sharing data across routines is error prone Information hiding allows programmers to determine what data is exposed to various routines
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.