Programação / Atributos

Programação/Atributo, ou seja atributo de uma classe, conceito: valor, classificação de uma informação específica, atribuída a um objeto (classe instanciada).

Exemplo:

class veiculo {
    public $modelo;
    public $cor;
    public $ano;
    public $marca;
}

$veiculo1 = new veiculo();
$veiculo2 = new veiculo();

$veiculo1->modelo = 'Range Rover Velar';
$veiculo1->ano = 2023;
$veiculo1->cor = 'Preto';

$veiculo2->modelo = 'Ferrari LaFerrarir';
$veiculo2->ano = 2021;
$veiculo2->cor = 'Vermelho';

No exemplo acima temos uma classe, instanciada em dois objetos diferentes, cada objeto com seus atributos e podemos trabalhar com a mesma classe com o mesmo nome de atributos obtendo valores diferentes em cada instância, na mesma sessão do php.

Muito bem, prosseguindo…
Em nossas aplicações Scriptcase, em programação temos a opção atributos, como uma aplicação SC é uma instância de uma classe baseada na aplicação, acreditava-se que atributos seria uma propriedade do objeto instanciado (e realmente era).

Devido a uma aplicação SC ser baseada em inúmeros arquivos php (fora outras extensões), quando criávamos um atributo em programação/atributos, não conseguíamos acessar o valor desse atributo em todos os eventos e área de código da aplicação (Reclamação antiga sobre o problema) no entanto que ninguém usava essa opção por ela não ser certeira em todos os eventos.

Não sei em qual changelog a NM resolveu corrigir isso, mas derrepente ao criar um atributo seu valor passou a ficar disponível em todos os eventos…Mágica? Mudança no core significativa? :thinking: :thinking: :thinking: :thinking:

Nããããooooo!

NM mudou o código interno transformando atributo em uma variável de sessão.
Ou seja, estando em sessão do php, o valor fica disponível em qualquer evento…
Se passou a ser uma sessão os atributos criados, essa opção deveria mudar de nome.

Pois se tenho a mesma aplicação sendo acessada mais de uma vez por itens diferentes do menu, cujo o parâmetro passado muda o comportamento da aplicação, e usava atributos, acreditando que a aplicação com instâncias diferentes obteria valores diferentes em seus atributos, danou-se tudo agora.

Quando limpo minha casa não jogo a sujeira para baixo do tapete

2 Curtidas