Actualmente estoy trabajando en un proyecto de software que realiza compresión e indexación en imágenes de videovigilancia. La compresión funciona dividiendo los objetos de fondo y primer plano, luego guardando el fondo como una imagen estática y el primer plano como un sprite.
Recientemente, me he embarcado en revisar algunas de las clases que he diseñado para el proyecto.
Noté que hay muchas clases que solo tienen un único método público. Algunas de estas clases son:
- VideoCompressor (con un
compress
método que toma un video de entrada de tipoRawVideo
y devuelve un video de salida de tipoCompressedVideo
). - VideoSplitter (con un
split
método que toma un video de entrada de tipoRawVideo
y devuelve un vector de 2 videos de salida, cada uno de tipoRawVideo
). - VideoIndexer (con un
index
método que toma un video de entrada de tipoRawVideo
y devuelve un índice de video de tipoVideoIndex
).
Me encuentro una instancia de cada clase sólo para hacer llamadas como VideoCompressor.compress(...)
, VideoSplitter.split(...)
, VideoIndexer.index(...)
.
En la superficie, creo que los nombres de clase son suficientemente descriptivos de su función prevista, y en realidad son sustantivos. En consecuencia, sus métodos también son verbos.
¿Es esto realmente un problema?