1
resposta

Valor Privado

Olá, na aula 4 do módulo: "02. Especificando uma Negociação", o professor nos passa o underline para apontar que os valores não devem ser alterados, porém podemos mudar, ele apenas indica que não é certo. Gostaria de saber se não é melhor substituir o underline pela hashtag (Se não me engano a proposta de uso de # como privado está no estágio 3), que aí indica que não podemos acessar de jeito nenhum por fora. Agradeço desde já.

Como ficou meu código:

class Negociacao {

    #data = '';
    #quantidade = 1;
    #valor = 0 + '.' + 0;

    constructor(data, quantidade, valor){ 

        this.#data = data;
        this.#quantidade = quantidade;
        this.#valor = valor;

    }

    getVolume() {
        return this.#quantidade * this.#valor;
    }

    getData() {
        return this.#data;
    }

    getQuantidade() {
        return this.#quantidade;
    }
    getValor() {
        return this.#valor;
    }
}
1 resposta

Olá Bernardo, tudo bem com você?

Peço desculpas pela demora no retorno.

Meus parabéns pela implementação do código e por compartilhá-lo com a comunidade do fórum Alura. O uso da cerquilha (#) na definição de atributos e métodos privados foi implementado oficialmente na ECMAScript 2022 (European Computer Manufacturers Association) para indicar os atributos ou métodos de classes que são privados e não podem ser acessados fora da classe. Assim, recomendo que dê preferência para o uso da cerquilha (#) sempre que estiver trabalhando com atributos privados, sendo considerado uma boa prática de programação.

Vale ressaltar que o uso do cerquilha (#) para privar atributos não será suportado em todas as versões dos navegadores. Para acompanhar as versões suportadas, você pode estar acessando o seguinte link: compatibilidade dos atributos privados.

Fico à disposição em caso de dúvidas.

Abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!