Programação Orientada à Objetos
Por: Thiago F.
02 de Outubro de 2015

Programação Orientada à Objetos

Computação Programação Geral Métodos Linguagem de programação Geral

O famoso paradigma da programação orientada a objetos. VIsto por muitos como um bixo de sete cabeças, mas quando se entende o seu funcionamento, fica claro que é uma "maneira" de se propgramar muito mais organizada, e também muito mais próxima dos requisitos do sistema do que a programação estruturada normal.

Importante ressaltar que se você possui dificuldades em lógica de programação, melhor estudar e fixar antes o conteúdo sobre isso, principalmente variáveis, vetores, estrturas de decisão, estrturas de repetição e passagens de parâmetros. Caso você já esteja firme com esses conceitos, aventure-se na Orientação a Objetos.

A programação estruturada é aquela em que as instruções da linguagem de programção são seguidas linha a linha, podendo haver algumas idas e voltas através de chamadas de funções, mas quando se chega na última linha do programa, ele é encerrado.

Ex (linguagem de programação fictícia).:

  1. Inicio
  2. String nome = "Joao"
  3. Int idade = 15
  4. String nome2 = "Maria"
  5. Int idade2 = 20
  6. Se idade > idade 2
  7.        print nome+" mais velho"
  8. else
  9.        print nome2+" mais velho"
  10.  
  11. fim

A linguagem é fácil de ser lida, compreendida, afinal é um conjunto de instruções sequenciais. A desvantagem está em melhorar o programa, e quando a tivermos a necessidade de tratar mais de duas pessoas? E se além do nome, iremos também controlar o RG dessas pessoas? O impacto no código começa a ficar grande, e diferença com o mundo real também.

Já a programação orientada a objeto, tem como princípio programar estruturas, conhecidas como classes, que em tempo de execução, serão transfomadas em objetos. Esses objetos possuem característica (atributos) e operações (métodos). E cada objeto é único.

Ex (linguagem de programação orientada a objeto fictícia)

  1. classe Pessoa
  2.      String nome
  3.      int idade
  4.      
  5.      setNome(String n)
  6.            nome = n
  7.    
  8.      setIdade(int i)
  9.            idade = i
  10.  
  11.      isMaisVelho(Pessoa p)
  12.            Se idade > p.idade
  13.                 print nome+" velho"
  14.            else
  15.                 print p.nome+" velho"
  16. Inicio
  17.       Pessoa joao = new Pessoa()
  18.       joao.setNome("João")
  19.       joao.setIdade(15)
  20.     
  21.       Pessoa maria = new Pessoa()
  22.       maria.setNome("Maria")
  23.       maria.setIdade(20)
  24.  
  25.       joao.isMaisVelho(maria)
  26. fim

Note, realmente existe uma dificuldade maior em se ler o código, afinal primeiro se cria a estrutura da classe pessoa, e ela irá ser utilizada somente na execuação do programa, ou seja, após o Inicio. Para saber o que acontece com a linha de código "joao.isMaiVelho(maria)", é preciso entender que joao é um objeto da classe Pessoa. E depois ir na classe Pessoa e ler o que faz o método isMaisVelho(Pessoa p), onde em tempo de execução, o objeto maria, também da classe Pessoa, é passado como paramêtro para o método isMasiVelho(Pessoa p), e lá ele faz a comparação da idade, e exibição do nome da pessoa mais velha.

Entendido isso, você pode procurar entender melhor os conceitos envolvidos na programação orientada a objetos: Abstração, Herança, Encapsulamente e Polimorfismo.

Para conhecer mais esses conceitos da orientação a objetos, sugiro a leitura do artigo: http://www.devmedia.com.br/os-4-pilares-da-programacao-orientada-a-objetos/9264

Espero ter mais ajudado, do que atrapalhado :D

Cadastre-se ou faça o login para comentar nessa publicação.

Confira artigos similares

Confira mais artigos sobre educação

+ ver todos os artigos

Encontre um professor particular

Busque, encontre e converse gratuitamente com professores particulares de todo o Brasil