UML - Interfaces e realizações

Índice
Às vezes acontece que quando fazemos diagramas em sistemas estendidos, percebemos que algumas classes não pertencem à classe principal, porém, podemos precisar de algumas operações da referida classe principal, o que nos deixa com várias opções em aberto.
Uma dessas opções é um Interface, este conceito nos permite especificar as operações em uma classe e como apresentá-las a outras pessoas.
Interface
O Interface nos permite especificar um conjunto de operações em classe que podem ser utilizadas por outras pessoas, é representado da mesma forma que uma classe usando um retângulo, porém difere de uma classe por não ter atributos porque será apenas um conjunto de operações.
Para distinguir um Interface de uma aula com seus atributos ocultos, devemos usar a palavra interface como um estereótipo, ou simplesmente colocar um eu na frente do nome dessa interface.
Vejamos o seguinte exemplo de como implementar uma interface em nosso diagrama:

Neste caso tomamos o teclado como exemplo, se olharmos para um teclado de computador e um teclado de máquina de escrever são muito semelhantes, então podemos concluir que podemos fazer uma interface, onde incorporamos a operação teclado (), em que ao premir uma tecla deve devolver uma resposta em forma de carta, quer no papel no caso da máquina de escrever quer no ecrã do nosso computador; então vemos que na classe do teclado temos várias operações adicionais, que correspondem às diferenças entre o teclado do computador e a máquina de escrever.
Como podemos ver, implementar uma interface não é tão complexo.
Também temos um formulário omitido para ser capaz de renderizar a interface Dentro de uma classe, podemos ver este formulário na seguinte imagem:

Visibilidade
O visibilidade corresponde à maneira como mostramos as operações e atributos de uma classe, existem certos processos que não deveriam ser mostrados para outras classes, então decidimos torná-los privados, isso atende a uma das condições de orientação a objetos que é o encapsulamento.
Temos 3 níveis de visibilidade que são os seguintes:
  • Público: isto pode ser visto de qualquer outra classe e para especificá-lo nós demarcamos com um sinal +.
  • Protegido: isso só pode ser visto pela classe original e todos aqueles que herdam dela, marcamos com o #.
  • Privado: Apenas a classe original pode ver isso e é demarcado por um -.
Então chegamos ao conceito de realização, onde especificamos que as interfaces devem colocar suas operações publicamente, caso contrário, esta figura não faria sentido, pois as outras classes não seriam capazes de ver as operações correspondentes.
Vejamos o seguinte exemplo de como especificar a visibilidade das operações e atributos de uma classe:

Como podemos ver na imagem, a televisão tem operação privada colorPictureOnScreen (), inferimos que apenas esta operação é importante para esta classe e que outra classe não teria que ter acesso a esta operação.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave