Tenho uma aplicação desktop multihread para realizar uma tarefa que envolve conexões web, processamento de dados, etc
Para uma melhor manutenção do projeto, estou modularizando as tarefas em várias classes. O meu grande problema está no fato de saber o pattern mais adequado para o caso.
As threads precisam acessar os métodos presentes nas outras classes para cumprir sua tarefa. Segundo as minhas pesquisas, a operação mais custosa em Java seria realizar um NEW(), para evitar isso eu passei a utilizar o padrão Singleton, pois alguns objetos terão que ser construídos muitas vezes.
No entanto, tenho visto centenas de críticas ao padrão Singleton e o uso de métodos Static, qual seria a melhor opçãp para o desenvolvimento ? pelo menos uma opção que não sacrifique o uso de RAM ? uma coisa que não enyendi muito bem é pq estes estilos de programação são tão nocivos assim … será q alguém poderia me dar uma ideia ? exemplo ?
grato
