Gestiona la configuración de fábrica de un robot.
Cuando un robot sale de la fábrica, no tiene nombre.
La primera vez que enciendes un robot, se genera un nombre aleatorio con el formato de dos letras mayúsculas seguidas de tres dígitos, como RX837 o BC811.
De vez en cuando hay que restablecer un robot a su configuración de fábrica, lo que significa que su nombre se borra. La próxima vez que se lo preguntes, ese robot responderá con un nombre aleatorio nuevo.
Los nombres deben ser aleatorios: no deben seguir una secuencia predecible. Usar nombres aleatorios conlleva un riesgo de colisiones. Tu solución debe garantizar que todos los robots existentes tengan un nombre único.
Asegúrate de que tu solución sea lo bastante general como para poder escalar fácilmente a nombres más largos que contengan más letras y dígitos. Además, esto suele dar lugar a un código de mejor calidad.
Sugerencia (esto no se comprueba explícitamente):
Para asegurarte de tener siempre un nombre único, podrías implementar tu propia caché o usar un Stream con su caché integrada.
Regístrate en Exercism para aprender y dominar Scala con 95 ejercicios y mentoría humana real, todo gratis.