Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Script desse capitulo com comentários.

Segue meu script com comentários.

class Negociacao{
    constructor(data,quantidade,valor){
        //Recebe a data. ( Utilizamos a criação de um novo objeto para extrair um valor do objeto Date, da qual possamos aplicar o "freeze" garantido assim uma informação imuntável.)
        this._data = new Date(data.getTime());
        //Recebe a quantidade ( Utilizamos o "_" para deixar a informação imutável)
        this._quantidade = quantidade;
        //Recebe o valor ( Utilizamos o "_" para deixar a informação imutável)
        this._valor = valor;
        // Utilizamos esse metodo para "congelar" as informações obtidas, tornando-os imutáveis.
        Object.freeze(this);
    }
     // Iremos utilizar o metodo GET para deixar os dados como somente leitura.
     //Função para calcular o volume
    get volume(){
        //Extrai os elementos (Quantidade e valor) do objeto  e calcula o volume
        return this._quantidade * this._valor;
    }
    // Utilizando o metodo GET ( Metodo acessador) para tornar visivel(externamente) o codigo que recebeu ( _ - só poderão ser acessadas pelos próprios métodos da classe) como forma de segurança e/ou regra de negócio.)
    get data(){
        return new Date (this._data.getTime());
    }
    get quantidade(){
        return this._quantidade;
    }
    get valor(){
        return this._valor;
    }


}
1 resposta
solução!

Boa Igor Albert Oliveira da Cruz,

Gostei da solução que você propôs, afinal o resultado é o mesmo porém o código me parece muito mais robusto.

Para que mais pessoas consigam visualizar a sua solução proposta é recomendável com que você venha estar marcando este tópico como solucionado, assim pode estar ajudando ainda mais pessoas :)

Obrigado!!