2
respostas

Relacionamento entre classes no Diagrama de Classes

Olá!!

Abaixo está um pequeno trecho em JavaScript que ilustra três das várias classes que possuo. ObjetoArray e ObjetoAtributo são composições de MinhaClasse, onde todas as instâncias de ObjetoArray são armazenadas no atributo array da MinhaClasse e cada instância de ObjetoAtributo é armazenada em um novo atributo (criado em tempo de execução pelo método inserirAtributo()). Como representar esses relacionamentos em UML?

Obs.: Trata-se de uma solução para um problema muito específico e precisa ser implementado dessa maneira.

class MinhaClasse {
    constructor() {
        this.array = [];
    }
    inserirAtributo(chave, valor) {
        this[chave] = valor;
    }
}

class ObjetoArray {
    constructor(nome) {
        this.nome = nome;
    }
}

class ObjetoAtributo {
    constructor(nome) {
        this.nome = nome;
    }
}
2 respostas

Bom dia, se não me engano, composição é com a ligação entre as duas classes por um traço e um losango, igual quando fazemos cardinalidade de tabelas

Obrigado pela resposta Guilherme!

É exatamente isso, um losango preenchido apontando para a classe que é composta.

Na verdade, o que eu gostaria de saber é o seguinte:

  • Como representar que o atributo array é um array onde serão armazenadas nenhuma ou várias instâncias de ObjetoArray?

  • Como representar que uma instância de MinhaClasse armazenará nenhuma ou várias instâncias de ObjetoAtributo, cada qual em um novo atributo?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software