stringtranslate.com

Clase auxiliar

En la programación orientada a objetos , una clase auxiliar se utiliza para ayudar a proporcionar alguna funcionalidad, que no es el objetivo principal de la aplicación o clase en la que se utiliza. [1] [2] Una instancia de una clase auxiliar se denomina objeto auxiliar (por ejemplo, en el patrón de delegación ).

Las clases auxiliares suelen crearse en lecciones introductorias de programación, después de que el programador novato haya ido más allá de la creación de una o dos clases.

Una clase de utilidad es un caso especial de una clase auxiliar en la que todos los métodos son estáticos. [3] En general, las clases auxiliares no tienen por qué tener todos los métodos estáticos, pero pueden tener variables de instancia. También pueden existir varias instancias de la clase auxiliar.

Ejemplo

Este también es un ejemplo de una clase de utilidad. A continuación se muestran los métodos de extensión del objeto de cadena.

clase pública estática PrependHelper { // funciones estáticas cadena pública estática MeowPrepend ( esta cadena texto ) { devolver $"Miau miau {texto}!" ; }               cadena pública estática WoofPrepend ( esta cadena texto ) { devolver $"Guau guau {texto}!" ; }          cadena pública estática WoohPrepend ( esta cadena texto ) { devolver $"Wooh {texto}!" ; } }         

Alternativa a la clase auxiliar

Las funciones que van a ser clases auxiliares se pueden colocar cerca de donde se utilizan. La otra alternativa es encapsular los parámetros de la clase auxiliar en una clase como un campo. Esa clase puede tener un nombre del dominio empresarial conectado a los campos que tiene. El siguiente ejemplo muestra cómo convertir métodos auxiliares en métodos de tipos de dominio:

clase pública Texto { cadena texto ;     cadena pública MeowPrepend () { devolver $"Miau miau {texto}!" ; }       cadena pública WoofPrepend () { devolver $"Guau guau {texto}!" ; }       cadena pública WoohPrepend () { devolver $"Wooh {texto}!" ; } }      

Referencias

  1. ^ Tee, Sim Hui (3 de diciembre de 2009). "Eliminación de redundancia de métodos para la mejora del diseño de clases internas". Notas de ingeniería de software de ACM SIGSOFT . 34 (6): 1–3. doi :10.1145/1640162.1640174. ISSN  0163-5948.
  2. ^ "¿Qué es un ayudante? ¿Es un patrón de diseño? ¿Es un algoritmo?". Software Engineering Stack Exchange . Consultado el 31 de octubre de 2023 .
  3. ^ "Clases auxiliares vs. clases de utilidad de Java | Baeldung". Baeldung . 28 de abril de 2023 . Consultado el 31 de octubre de 2023 .

Véase también

Véase también