Ho un numero di classi con un singolo metodo pubblico. Esaminando questa risposta, tendo a concordare con quanto affermato.
L'OP elenca alcuni esempi, che interpreto per essere usato come
(new VideoCompressor)->compress($raw_video);
Mentre la leggibilità migliora leggermente chiamando il nome del metodo esplicito, ritengo che sia quasi leggibile spostando semplicemente i parametri su __construct()
e chiamando la funzione compress
all'interno del costruttore.
new VideoCompressor($raw_video);
Ciò tuttavia aggiungerebbe un costruttore alla classe se non ne avesse già uno.
Ai miei occhi sarebbe uno scambio tra chiamate alle classi leggermente più piccole in cambio di più codice all'interno della classe.
C'è qualche altra ragione per cui si dovrebbe preferire un metodo diverso dal gusto personale?