Maykell (discussão | contribs)
Linha 7: Linha 7:


= Conceito de Classes =
= Conceito de Classes =
--Michelly
 
Em POO , os problemas de programação são pensados em termos de objetos, nada de funções, rotinas, nada disto, o assunto são os objetos, propriedades e métodos.
Definição de um objeto : "Um objeto  é um termo que usamos para representar uma entidade do mundo real" 
 
Usando como exemplo um cachorro chamado BOB . Posso descrever o BOB em termos de seus atributos físicos: é pequeno , sua cor principal é castanha, olhos pretos, orelhas pequenas e caídas, rabo pequeno, patas brancas.
Posso também descrever algumas ações que ele faz : Corre, Come, Brinca, Pula, Late.
 
Em termos de POO para poder tratar os objetos começamos criando classes.
Definição de Classe : "Uma classe representa um conjunto de objetos que possuem comportamentos e características comuns".
 
Uma classe é representada por um retângulo que pode possuir até três divisões:
 Nome da classe;
 Atributos da classe;
 Métodos da classe.
CLASSE CACHORRO UML
[[Arquivo:classe.png]]
 
Podemos pensar em uma classe com um modelo para criar quantos objetos desejamos de um tipo particular.Pense em um carimbo com a imagem de um cachorro , quando você carimba e obtêm um desenho de cachorro você acabou de criar uma instância da classe e obteve um objeto daquela classe. O novo objeto possuirá todas as características e comportamentos definidos pela classe.
 
DESENHO CLASSE E OBJETO BOB
[[Arquivo:classe2.jpg]]
 
Visibilidade de atributos e operações :
 
Para poder representar a visibilidade dos atributos e operações em uma classe utiliza-se as seguintes marcas e significados:
• + público - visível em qualquer classe
• # protegido - qualquer descendente pode usar
• - privado - visível somente dentro da classe


= Herança =
= Herança =

Edição das 16h13min de 23 de julho de 2013

Introdução

--João

  • A UML(Unified Modeling Language ou Linguagem de Modelagem Unificada) é uma linguagem visual utilizada para modelar sistemas computacionais por meio do paradigma da Orientação a Objetos. Essa linguagem tornou-se, nos ultimos anos a linguagem-padrão de modelagem de software adotada internacionalmente pela industria da Engenharia de software.
  • Ressalto aqui que a UML não é uma linguagem de programação, e sim uma linguagem de modelagem.
  • A diferença da linguagem de modelagem para a linguagem de programação está no fato de que a linguagem de modelagem é um meio de guiar engenheiros e técnicos sobre os requisitos, o comportamento, estrutura lógica e até necessidades fisicas de um determinado software.
  • A UML surgiu da união de três métodos de modelagem, o método de Booch, o método OMT de Jacobson e o método OOSE. Que foram os métodos mais populares entre os profissionais da área até meados da década de 90.

Conceito de Classes

Em POO , os problemas de programação são pensados em termos de objetos, nada de funções, rotinas, nada disto, o assunto são os objetos, propriedades e métodos.

Definição de um objeto : "Um objeto é um termo que usamos para representar uma entidade do mundo real"

Usando como exemplo um cachorro chamado BOB . Posso descrever o BOB em termos de seus atributos físicos: é pequeno , sua cor principal é castanha, olhos pretos, orelhas pequenas e caídas, rabo pequeno, patas brancas.

Posso também descrever algumas ações que ele faz : Corre, Come, Brinca, Pula, Late.

Em termos de POO para poder tratar os objetos começamos criando classes.

Definição de Classe : "Uma classe representa um conjunto de objetos que possuem comportamentos e características comuns".

Uma classe é representada por um retângulo que pode possuir até três divisões:  Nome da classe;  Atributos da classe;  Métodos da classe.

CLASSE CACHORRO UML

Podemos pensar em uma classe com um modelo para criar quantos objetos desejamos de um tipo particular.Pense em um carimbo com a imagem de um cachorro , quando você carimba e obtêm um desenho de cachorro você acabou de criar uma instância da classe e obteve um objeto daquela classe. O novo objeto possuirá todas as características e comportamentos definidos pela classe.

DESENHO CLASSE E OBJETO BOB Arquivo:Classe2.jpg

Visibilidade de atributos e operações :

Para poder representar a visibilidade dos atributos e operações em uma classe utiliza-se as seguintes marcas e significados: • + público - visível em qualquer classe • # protegido - qualquer descendente pode usar • - privado - visível somente dentro da classe

Herança

--Michelly

  • O que é?
  • Exemplo


Polimorfismo

--Michelly

  • O que é?
  • Exemplo


Relacionamentos entre classes

--Othávio

Associações

--Othávio

  • O que é?
  • Exemplo


Dependência

--Othávio

  • O que é?
  • Exemplo


Agregação

--Maykel

  • Tipo especial de associação que tenta demonstrar que as informações de um objeto-todo precisam ser complementadas pelas informações contidas em um (ou mais) objetos-parte.
  • A existência do objeto-parte faz sentido mesmo não existindo o objeto-todo.
  • Um objeto “parte” pode fazer parte de vários objetos “todo”.
  • A associação de agregação pode, em muitos casos, ser substituída por uma associação binária simples, dependendo da visão de quem faz a modelagem.
  • As palavras chaves usadas para identificar uma agregação são: "consiste em", "contém", "é parte de".


Composição

--Maykel

  • Uma forma mais forte de agregação.
  • Há uma coincidência da vida das partes.
  • Uma vez criada a parte ela irá viver e morrer com ele.
  • O “Todo” é responsável pelo gerenciamento da criação e destruição das partes.

Diagrama de Classes

  • Porque modelar um software?
Uma casa precisa ser projetada? Um pedreiro experiente consegue construir uma casa sem precisar de um projeto.
Agora pensemos se essa casa um dia precisar de um reparo no encanamento ou na fiação em um determinado ponto,
devemos quebrar toda a parede para reparar um pequeno ponto? essa parede não é uma parede de sustentação principal da casa?

Exemplos

--João e Maykel


Referências