Mi trovo spesso a confrontarmi con classi helper o util in Java o qualunque tipo di linguaggio. Quindi mi stavo chiedendo se si tratta di una sorta di Anti Pattern e l'esistenza di questo tipo di classi è solo una mancanza di progettazione e architettura di un software.
Spesso queste classi sono limitate usando solo metodi statici, che fanno molte cose. Ma soprattutto dipende dal contesto e dalla condizione.
La mia domanda è: qual è la tua opinione su questo tipo di classi helper / util statiche perché il vantaggio è ovviamente l'invocazione rapida usando solo il nome della classe.
E a quale tipo di astrazione eviteresti di usare questo tipo di lezioni?
A mio avviso, la parola chiave "statico" dovrebbe essere consentita solo all'interno della dichiarazione di una classe (Java) e non per i metodi. A mio avviso, usandolo in questo modo, potrebbe essere una buona alternativa e una via di mezzo per poter combinare i paradigmi procuedural e OO in Java ed evitare il mancato uso della parola chiave.
Aggiunte dovute alle risposte:
All'inizio penso che sia completamente legale poter combinare paradigmi diversi e persino usare linguaggi di script interpretati in fase di esecuzione all'interno del codice compilato di VM o VM.
La mia esperienza è che durante il processo di sviluppo di un progetto questo tipo di helpers e utils o qualunque sia il nome, crescono e crescono e vengono utilizzati in ogni angolo dimenticato della base di codice, che originariamente era progettato per essere modulare e flessibile. E a causa della mancanza di tempo per apportare rifatturazioni o ripensare al design, è solo molto peggio nel tempo.
Penso che static
dovrebbe essere rimosso da Java. Soprattutto ora dove è possibile utilizzare elementi linguistici funzionali ancora più sofisticati.