Engenharia De Software III - Aula 01
Conteúdo da aula
Breve linha do tempo dos métodos de programação
- Primeiro surgiam os padrões Sequênciais
- Conforme a necessidade tecnológica, evoluiram para os padrões Procedurais
- Com interface gráfica, surgiram os padrões de programação orientada a Eventos
- E com elas, duas grandes linguagens ficaram famosas: Delphi e VB
- Com os computadores interligados em redes, houve a necessidade de uma programação orientada a Objeto
A Programação orientada a Objetos veio para suprir a necessidade de reutilizar códigos e reduzir o alto consumo de memória. Como exemplo, o botão de salvar do excel, do word, do powerpoint… é o mesmo botão. Apenas uma questão de reutilização deste objeto que irá salvar algo.
Dentro da Programação Orientada a Objetos é possível criar programas Sequênciais, Procedurais e orientado a Eventos. Ela permite aplicar todas as anteriores.
Conceitos de Orientação a Objeto
Observando duas fotos de carros diferentes, um antigo e outro mais novo. Ainda assim, são carros. E sendo carros, há questões que podem ser reaproveitadas entre eles - tais como Portas, Quantidade de Pneus, Volante, etc.
No entanto, mesmo entre as questões genéricas, há os detalhes, as especificidades de cada carro, como potência do motor (embora ambos tenham motor), valor do seguro, entre outros.
Por isso, podemos dizer que Carro é um Classe, mas um Ford Ka, um Toyota Corolla, uma VW Kombi são Instâncias desta Classe - ou seja, um Objeto, ou seja - a generalização é caracterizada pelo objeto, enquanto as especificidades são como instâncias do mesmo.
Fácil de manter
- Precisa ser fácil de manter;
- Deve ser possível a reutilização de código, sem duplicidade do mesmo;
- Fácil de ser lido.
- Alteração mais simples de ser realizada
Atributos e Métodos
Toda classe tem seus atributos e seus métodos. Ainda observando a classe Carro, seus atributos são aqueles que comentamos acima, tais como Portas, Rodas, Motor…
E seus métodos serão como, acelerar, frear, desligar, ligar…
Embora os métodos não consigam acessar dados de outras classes/objetos, uma classe pode ter o conhecimento de dados de outras chamando por serviços, ou mensagens.
Classes
Uma classe é uma representação de um conjunto de objetos que compartilham a mesma estrutura de atributos, operações e relacionamentos dentro de um mesmo contexto.
Objeto
É uma instâcia de uma classe, a ocorrência daquela classe num determinado momento.
Exemplo
Um objeto “João” é do tipo Classe “Pessoa”.
java code snippet start
Class Pessoa {
String nome;
String sexo;
Date dataNascimento;
String estadoCivil;
}
// (...)
public static void main(args[]){
Pessoa joao = ("João", "Masculino", 1998-01-30, "Solteiro");
System.out.println(joao.nome); // João
System.out.println(joao.sexo); // Masculino
System.out.println(joao.dataNascimento); // 1998-01-30
System.out.println(joao.estadoCivil); // Solteiro
}
java code snippet end
Referências Engenharia de Software I - Aula 01 Banco de Dados - Exercícios SQL Exercícios de Diagrama de Classes Programação Orientada a Objetos - Aula 01