Hoje vou iniciar uma série de post’s que tem como objetivo introduzir os conceitos básicos de POO (Programação Orientada a Objeto), a plataforma .NET e em sequência alguns pontos mais avançados sobre esses assuntos.
Vou escrever essa série de post’s em virtude do meu trabalho (não posso entrar em detalhes agora, mas irei dar notícias a todos em breve). O principal foco dos post’s serão desenvolvedores que desconhecem programação orientada a objeto.
Não irei abordar neste post os conceitos de POO como Objeto, Herança e Classe, porque antes de entrar em detalhes sobre esses pontos, primeiro devemos entender o porque do surgimento da POO.
O início da POO
Um dos criadores deste conceito de linguagem de programação foi Alan Kay, também conhecido por ter criado a linguagem de programação Smalltalk.
A criação deste conceito se deve em grande parte as linguagens de programação mais antigas como Fortran, C, Pascal também conhecidas como linguagens de programação procedimentais, ou seja, imagine uma lista de instruções onde cada linha que é executada realiza uma tarefa, por exemplo, cria uma variável, adiciona uma valor a variável, exibe um resultado.
Esse contexto em uma situação onde se tem um sistema pequeno, talvez não seja um problema, mas a medida que o sistema cresce e consequentemente a lista de instruções cresce, a execução/manutenção desta lista poderá se tornar uma tarefa um tanto quanto difícil.
Uma tentativa de minizar o problema é dividir o código do sistema em pequenas partes, denominadas de funções. A quebra do código em funções e o agrupamento dessas funções pela semelhança de suas ações, são um dos fundamentos da programação estruturada e até mesmo este paradigma de programação mostra limitações a medida que o sistema cresce.
Com esse problema surgiu a necessidade da criação de uma linguagem de programação que resolvesse este problema. Aí surge o conceito de POO.
O problema e a solução
Bom, então já temos um problema: Situações que requerem um sistema um tanto quanto robusto e grande, possuem problemas para implementação de soluções com as linguagens de programação procedimentais ou pela programação estruturada. Então como resolver isso?
A utilização de programação orientada a objeto ou como alguns chamam modelagem orientada a objeto requer a identificação deste problema e o mapeamento da solução na forma de objetos.
A POO foi criada com o objetivo de tentar aproximar ao máximo o mudo real do mundo computacional. Mas como isso é feito? Mapeando todos os objetos.
O nosso mundo é constituído de objetos e esses objetos possuem estados, comportamentos e cada um tem sua própria identidade. A POO vem para auxiliar na descrição dos objetos de um problema da forma real, para a forma computacional.
Bom, então podemos definir como a principal característica da programação orientada a objeto a modelagem de um problema do mundo real, para um mapeamento dos objetos destes problemas no mundo computacional, visando facilitar a criação de uma solução.
Bom, espero que tenham gostado.