Transformação UML em Java

Rashmi Patidar 15 fevereiro 2024
Transformação UML em Java

Unified Modeling Language é um acrônimo para UML, é uma linguagem padrão para a representação e documentação de sistemas de software. Os modelos trazem melhor compreensão entre os desenvolvedores. Os diagramas ajudam a visualizar, expressar as necessidades e especificar as construções do sistema de software.

O diagrama é útil para analistas de negócios, designers, testadores, analistas de qualidade, clientes, autores técnicos.

UML é um termo de alto nível para vários tipos de diagramas nesta categoria. Uma variedade de mapeamentos precisa ser cuidada durante a interpretação do diagrama UML. Vamos dar uma olhada detalhada no diagrama UML e na conversão deles.

Representação UML de uma faculdade

No diagrama acima, existem várias entidades envolvidas. Portanto, a primeira etapa da conversão é criar uma classe a partir das entidades abaixo. Essas entidades estão lá em amarelo. A classe contém os atributos fornecidos no diagrama. Além disso, o tipo de dados para o campo específico está presente na frente.

  1. Para criar uma classe, vá ao editor dizer IDE Intellij.
  2. Crie uma nova classe chamada Universidade, Faculdade, Alunos e Departamento.
  3. Insira os campos com o tipo de dados no formato do tipo private String university Id.
  4. Selecione os campos recém-criados e clique com o botão direito do mouse na tela ou pressione a tecla Alt+Insert.
  5. Um pop-up generate piscará na tela.
  6. Role para baixo até Getter e Setter
  7. Clique em Ok na parte inferior.
  8. Da mesma forma, prossiga com as outras classes também.

O processo gera todas as classes e campos junto com os métodos getters e setters. Agora verifique a relação entre as tabelas.

Quanto à extremidade da classe | o símbolo do tubo está visível. Do outro lado da linha, um símbolo é visível sobre uma linha, tornando o sinal semelhante a um sistema de três pés, freqüentemente chamado de símbolo de pé-de-galinha. A relação descreve um tipo de relacionamento um para muitos. O relacionamento um para muitos indica que pode haver várias entidades presentes para uma única entidade. No nosso caso, só poderia haver uma universidade e muitas faculdades inscritas nela.

A relação representa a classe Java fazendo com que a classe University contenha o número n do objeto College. E oposto a esta classe College conterá apenas uma única referência de objeto University. Portanto, as classes se pareceriam com a classe mencionada abaixo.

public class University {
  private String universityId;
  private String universityName;
  private String address;
  private List<College> colleges;
}

public class College {
  private String collegeId;
  private String collegeName;
  private University university;
}

As Enumerações podem ser utilizadas para associar as entidades a outras. Ele fornece a capacidade de escolher um valor de um conjunto definido de valores. Quando há um conjunto mínimo de opções, enums são a escolha adequada.

No diagrama de classe abaixo, verifique os tipos de agregação e composição de relacionamentos.

composição e agregação

O símbolo black dark diamond representa o tipo de relação a ser composta. Em termos mais simples, Composição é a dependência de duas entidades, ou se uma entidade não existe, a outra também não existirá. Portanto, o caso é mostrado acima. A entidade car é composta pela classe Wheels. Portanto, sem a instância Wheels, um car não é considerado um carro. Portanto, representa uma relação forte e, portanto, uma relação de Composição.

Para conseguir o comportamento de composição nas classes abaixo é um exemplo.

class Wheel {
  private String manufacturer;
}

final class Car {
  private final Wheel Wheel; // Composition

  Car(Wheel wheel) {
    this.wheel = wheel;
  }

  public void move() {
    System.out.println("Car works");
  }
}
}

O especificador final com a instância Wheel na classe Car define a relação Composition. E, portanto, deve ser iniciado como e quando uma instância de carro é chamada. A roda é instanciada no construtor.

Outra relação é Agregação e denotada pela forma de diamante preto vazio. As duas entidades não estão fortemente relacionadas e têm existência independente, sendo, portanto, o oposto da relação composição. Se um dos dois não estiver presente, o outro também pode sobreviver. Conforme referido acima, com a entidade Car e Brand. Mesmo que um carro não tenha uma instância de Brand Name, então existe uma classe de carro.

Rashmi Patidar avatar Rashmi Patidar avatar

Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.

LinkedIn