Paradigms
Course ID: CS 390I
Credit Hours: 4
Instructor: Dr. Jody Paul

Terminology

Programming language

Programming paradigm

Programming technique

Programming style

Programming culture

 

Programming Paradigm Overview

Overview of four common programming paradigms[1]

  • Imperative: Sequence of state changes
  • Functional: Evaluate expressions; use return values
  • Logic: Declarative search for solution
  • Object-Oriented: Simulation via message-passing objects

Characteristics, positive effects, and negative effects of each

Java support for imperative, functional, and object-oriented programming

Assignment is the basis of imperative programming.

A method with a void return value type is called a procedure.

A method with a nonvoid return value type is called a function.

A pure function is a function that always returns the same result value given the same argument value and has no side-effects (referential transparency).

Lambda expressions are incorporated into Java 8.[2]

Functional syntax can be translated into JVM bytecode.[3]

[1] Kurt Nørmark's online course notes
[2] Lambda expressions in Java SE 8
[3] Clojure