Object-oriented programming (OOP) is a programming paradigm that uses "objects" and their interactions to design applications and computer programs.
Annotative programming (as in Flare language)
Aspect-oriented programming (as in AspectJ)
Attribute-Oriented Programming (as in Java 5 Annotations, pre-processed by the XDoclet class; C# Attributes)
Automata-Based Programming
Class-based programming, compared to Prototype-based programming (within the context of object-oriented programming)
Concept-oriented programming is based on using concepts as the main programming construct.
Constraint programming, compared to logic programming
Cybernetics Oriented Programming
Dataflow programming (as in spreadsheets)
Flow-driven programming, compared to event-driven programming
Function-level programming
Functional programming
Imperative programming, compared to declarative programming
Literate Programming
Logic programming (as in Prolog)
Message passing programming, compared to imperative programming
Nondeterministic programming
Object-oriented programming (as in Smalltalk)
Pipeline programming (as in the UNIX command line)
Policy-based programming
Procedural programming, compared to functional programming
Process-oriented programming a parallel programming model.
Reactive programming
Recursive programming, compared to iterative programming
Reflective programming
Scalar programming, compared to Array programming
Component-oriented programming (as in OLE)
Structured programming, compared to unstructured programming
Subject-oriented programming
Tree programming
Value-level programming, compared to function-level programming