Tempo aproximado para leitura:00:01:00 min
Dúvida
É possível implementar o padrão de projeto (design pattern) Singleton?
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) – ADVPL – A partir da versão 11.8
Solução
Atualmente na linguagem ADVPL não é possível implementar o padrão de projeto Singleton, dado ao fato que é necessário que a propriedade que armazenará a instância da classe tenha escopo privado (assim como o construtor), contudo o ADVPL não possui identificadores de escopo de privem o usuário do acesso direto.
Cross Segmento - TOTVS Backoffice Linha Protheus - ADVPL - Padrão de projeto singleton
-
Entendo que o Design Pattern Singleton necessite de uma propriedade de escopo protegido (sem acesso fora da classe), mas se fosse implementar ignorando essa premissa, a ADVPL também não conseguiria implementar. Certo? Tentei montar algo similar e não consegui fazer o construtor retornar o mesmo conteúdo existente na primeira instância do objeto. Vale ressaltar que nesta classe havia uma propriedade THashmap dentro dela.
Se houver como fazer isso, favor exemplificar.
1 Comentários