quinta-feira, 8 de maio de 2014

Conceitos de Orientação a Objetos

Conceitos de Orientação a Objetos


  Orientação a objetos é um modelo de programação baseado na composição e interação entre diversas unidades de software (objetos).
  O termo Programação Orientada a Objetos foi criado por Alan Kay, autor da linguagem de programação Smalltalk. Apesar do termo ser bastante antigo, é algo que começou a ser bem utilizado quase que recentemente.

Orientação a objetos é um modelo de programação baseado na composição e interação entre diversas unidades de software (objetos).
  Este paradigma de análise, projeto e programação de sistemas de software tem sido muito utilizado tanto no meio científico como no mercado de trabalho pela sua fácil compreensão.


  Alguns exemplos de linguagens de programação que utilizam a Orientação a Objetos:
  • C Sharp;
  • Java;
  • Object Pascal;
  • Python;
  • Visual Basic;



Na POO, o programador é responsável por moldar objetos e explicá-los como devem interagir entre si.  Exemplo, imagine que você desenvolvendo um sistema que vai realizar matrículas na faculdade que possui diversos alunos. Fica claro então, a existência de objetos do tipo Cliente dentro do programa. Esse clientes dentro do programa, serão objetos que simulam as caraterísticas e ações do mundo real.
"A POO foi criada para tentar aproximar o mundo real do mundo virtual: a idéia fundamental é tentar simular o mundo real dentro do computador. Para isso, nada mais natural do que utilizar Objetos, afinal, nosso mundo é composto de objetos, certo?!
Na POO o programador é responsável por moldar o mundo dos objetos, e explicar para estes objetos como eles devem interagir entre si. Os objetos "conversam" uns com os outros através doentio de mensagens, e o papel principal do programador é especificar quais serão as mensagens que cada objeto pode receber, e também qual a ação que aquele objeto deve realizar ao receber aquela mensagem em específico.
Uma mensagem é um pequeno texto que os objetos conseguem entender e, por questões técnicas, não pode conter espaços. Junto com algumas dessas mensagens ainda é possível passar algumas informações para o objeto (parâmetros), dessa forma, dois objetos conseguem trocar informações entre si facilmente." Marcio Frayze David em http://www.hardware.com.br/artigos/programacao-orientada-objetos/

Classes, Objetos, Atributos, Métodos, Construtores, Herança, Polimorfismo.

Classes: Abstração que define um tipo de objeto e o que cada objeto possui (atributos) e também define os tipos de ações este tipo de objeto realiza (métodos).
Objetos: Abstração de software que pode representar algo real ou virtual.
O celular em si, do exemplo anterior.
Atributos: Variáveis que estarão dentro dos objetos da classe. Característica de um objeto.
  Valor, marca, cor, sistemaOperacional, modelo, nome do exemplo anterior.
Métodos: Ações que a classe será capaz de realizar. Procedimentos que manipulam atributos de objetos para os quais o método foi definido.
Os getter e setter do exemplo anterior.
Construtores: Serve para inicializar atributos. Executado automaticamente sempre que um objeto é criado.
Um método que seguindo o exemplo anterior, seria por exemplo +celular().
Herança: Visa aproveitamento de métodos e atributos de uma outra classe. Ocorre quando há repetição de atributos pelo motivo um objeto ser o outro.
Polimorfismo: Capacidade de controlar todas as formas, sem ter que se preocupar com cada objeto especificamente.

Vantagens da POO

  • Reaproveitamento de códigos;
  • Divisão de tarefas e o respectivo gerenciamento do projeto;
  • Facilidade de manutenção e extensão de código;

Desvantagens da POO

  • Aprendizado obrigatório dos conceitos;
  • Performance reduzida em tempo de execução;

Site com tema abordado


Vídeos

Bibliografia

Diego Rodrigues Ferreira - 71787
Eduardo Luiz Grigoletto Rosell - 71021
Luiz Gabriel de Souza Rodrigues- 71339
Ranielle Assis Dantas Junio - 71799 





Um comentário: