Languages: BASIC, Pascal, COBOL, Fortran, Ada.
Emphasizes linear steps that provide the computer with instructions on how to solve a problem or carry out a task.
Types of problems: Linear, step-by-step, and algorithm.
Advantages: Very efficient with number crunching.
Languages: Smalltalk, C++, Java, Scratch
Formulates programs as a series of objects and methods that interact to perform a specific task.
Problems solving: emphasizes classes and methods that form objects. Real world objects.
Disadvantages: Many classes, or objects for the problem.
Advantages: Helps managers
Focuses on the use of facts and rules to describe a problem.
Problems: Good with word problems
Advantages: Arrives with many solutions
Disadvantages: Does not specifically solve the problems, but gives many prospect answers.
Languages: LISP, Scheme, Haskell
Emphasizes the evaluation of expressions, called functions.
Problems: Evaluation of expressions
Advantages: Help evaluate problems to help solve them.
Disadvantages: Less effiecient
Languages: Visual Basic, C#
Focuses on selecting user interface elements and defining event-handing routines that are triggered by various mouse or keyboard activities.
Problems: Event-handling routines.
Advantages: significantly reduce development time and simplify the entire programming process.
Disadvantages: Syntax errors