Durante el curso de la escritura de las pautas de código para una empresa, me encontré recomendando usar el patrón Builder de Effective Java, en lugar de constructores telescópicos.
Sin embargo, después de pensarlo un poco más, seguramente una solución más elegante es simplemente eliminar la clase de generador y también eliminar los constructores adicionales con argumentos opcionales.
Por lo tanto, solo tiene un constructor con los parámetros requeridos, getters / setters normales y comente el código. Al implementar, simplemente cree una nueva instancia del objeto yr y luego establezca valores.
Mi pensamiento original era que el beneficio provenía de eliminar la confusión en cuanto a qué parámetros eran opcionales y qué se requerían; sin embargo, el verdadero beneficio proviene del uso del método de encadenamiento / interfaz fluida.
El patrón de construcción tiene beneficios cuando crea muchas instancias nuevas, ya que el ide puede hacer el trabajo de piernas y también si hay muchos (15+) parámetros opcionales. Sin embargo, ¿vale la pena el tiempo extra codificando la clase interna estática, recomendaría usar el constructor, o es una pérdida de tiempo?