A programação orientada para objecto consiste em modelar informaticamente um conjunto de elementos de uma parte do mundo real (que se chama domínio) num conjunto de entidades informáticas. Estas entidades informáticas chamam-se objectos. Trata-se de dados informáticos que agrupam as principais características dos elementos do mundo real (dimensão, cor,…).
A abordagem objecto é uma ideia que é comummente aceite. Simula foi a primeira linguagem de programação a aplicar o conceito de classes em 1967! Em 1976, Smalltalk aplica os conceitos de encapsulação, de agregação, e de herança (os principais conceitos da abordagem objecto). Por outro lado, numerosas linguagens orientadas para os objectos foram desenvolvidas com um objectivo universitário (Eiffel, objectiva C, Loops, etc.).
A dificuldade desta modelização consiste em criar uma representação abstracta, sob a forma de objectos, de entidades que têm uma existência material (cão, automóvel, lâmpada,…) ou virtual (segurança social, tempo,…).
Um objecto caracteriza-se por várias noções :