Sunteți pe pagina 1din 11

Outline for the Quarter

A. Evolution of Programming Languages


B. Visual Basic 6.0 Environment
C. Starting a Project
D. Working with Forms
E. Variables and Constants
F. Operators and Functions
Evolution of
Programming
Languages
Lecture
First Generation Languages
(1GL)
 Machine Language
 Uses 1’s and 0’s (binary)
 Advantages
 Fast and Efficient
 Directly understood by the computer
 Disadvantages
 Cumbersome – very difficult to learn and use
 Machine dependent
Second Generation Language
(2GL)
 Assembly or Symbolic language
 Uses mnemonics or very short commands
 Advantages
 Less difficult to learn and use (compared to 1GL)
 Fast and Efficient
 Disadvantages
 Still difficult to learn and use
 Needs to be assembled into machine language
 Machine dependent (non-portable)
Third Generation Languages
(3GL)
 High Level Language
 Advantages
 Easier for programmers to learn and use
 Supports data structures, control structures and
structured decomposition
 Machine-independent (portable)
 Disadvantages
 Needs to be compiled to produce object code
 Program size becomes larger due to overhead code
Fourth Generation Languages
(4GL)
 Declarative Language
 Advantages
 English-like and non-procedural
 Easier to learn and use (compared to 3GL)
 Faster to program due to less coding required
 Machine-independent (portable)
 Disadvantages
 Not suitable/effective for all programming
requirements
 Inelegant code and difficult to maintain
Programming Paradigms

 A model or way of thinking about computing


 A fundamental style of programming
regarding how solutions to problems are
formulated in a programming language
 Provides and determines the view that the
programmer has of the execution of the
program
Imperative Programming

 Also called procedural programming


 Oldest and most traditional
 Declarative description of the problem as a
set of rules is provided
 “How to do”
 Like a recipe
 Examples: FORTRAN, Algol, COBOL,
Pascal, C
Functional Programming

 An expression-oriented paradigm that is close


to mathematical specification
 Emphasis on evaluation of expressions
 Used in academia rather than in commercial
software development
 Examples: Lisp (John McCarthy), Haskell
(Simon Peyton-Jones),
Logic Programming

 Based on logical deduction


 Declarative description of the problem as a
set of rules provided, from which the
solutions are then inferred
 Example: Prolog (Alain Colmerauer)
Object-Oriented Programming
(OOP)
 Uses objects and their interactions to design
applications and computer programs
 Strongly emphasizes modularity

Class – defines the abstract characteristics of a


thing (object)
Object – an instance in a class
Method – ability of an object
 Example: Java (Sun Microsystems), C++
(Bjourne Stroustroup), Visual Basic