¿Qué técnicas puedo usar en Scala para manejar listas de parámetros de tipo largo?Scala: cómo trabajar con listas de parámetros de tipo largo
Estoy trabajando en un pequeño marco para ejecutar varios tipos de juegos con diferentes entornos simulados. Estoy tratando de mantener ciertas partes del framework relativamente genéricas, así que estoy presentando varios tipos como parámetros de tipo, como el estado del entorno, el resultado del juego, etc.
Todo funciona bastante bien y lo hago obtenga los beneficios deseados de un marco genérico pero seguro para el tipo. Pero las firmas de tipos han crecido hasta el punto de hacer que el código sea bastante difícil de leer y la refacturación se ha vuelto bastante engorrosa. La firma del Simulador de nivel superior tiene ocho parámetros de tipo y muchos de los tipos principales tienen de tres a cinco. Los errores individuales del tipo de compilador, ya que enumeran los tipos de clase o parámetros de función (que por supuesto también tienen parámetros de tipo), parecen ejecutarse regularmente en cien líneas.
De vez en cuando, pero muy raramente, puedo omitir los parámetros de tipo, p. Ej. en constructores Pero en la mayoría de los casos, al menos uno de los tipos no se deducirá, así que termino insertando la firma de tipo completa.
Obviamente esto no es ideal y estoy buscando formas de resolver este problema. ¡Cualquier consejo sería apreciado!
pocas líneas de código de ejemplo siempre son apreciados;) – agilesteel
Es un problema muy general. No estoy seguro de que el código de muestra agregue mucho valor. Son solo las cosas habituales: rasgos, clases, funciones, cada uno con parámetros de tipo, y campos/miembros también con parámetros de tipo. –