Examen final (2023)
Estimado equipo:
Le damos la bienvenida a Terminal Frost Inc., una nueva empresa de juegos de video. Nuestro objetivo es desarrollar versiones de juegos clásicos que puedan correrse en una terminal. Nuestros clientes son programadores que necesitan relajarse durante su trabajo, pero debido a las restricciones de cada una de las empresas donde trabajan, no pueden instalar juegos en sus computadoras.
Nuestra primera lista de juegos a desarrollar es la siguiente:
Hemos recibido excelentes referencias de las habilidades de su equipo en la programación funcional usando F#, por lo tanto hemos decidido otorgarles el trabajo de desarrollar alguno de los juegos de la lista, a su elección.
La intención es poder poner en el mercado los juegos para las vacaciones de invierno, así que el equipo deberá finalizar su tarea para el día 29 de junio del corriente año.
Entregables
Necesitamos recibir el repositorio (en GitHub) con los fuentes del juego elegido, que deberá contener:
- Una solución de .NET con el código en F#
- Un proyecto con tests unitarios contenido en dicha solución
- El/los proyectos de bibliotecas necesarias para la ejecución de dichos tests
- Un archivo README.md con información que el equipo considere necesaria sobre el código
El trabajo se considerará entregado con el último commit realizado en el repositorio antes de las 11:59 hs (GMT-3) del día 29/6/2023. Cualquier commit posterior no será tenido en cuenta.
El equipo podrá determinar entregar antes el trabajo propuesto, con una comunicación por correo electrónico al CTO de Terminal Frost.
Valoración
Se valorará
- El trabajo en equipo
- El diseño general del código
- La claridad y legibilidad del código
- El uso de tests unitarios para probar el código
- Los aspectos de la programación funcional que se observen en el código
La evaluación se realizará sobre el repositorio entregado, analizando la evolución del mismo y la participación de los integrantes del equipo en la tarea.
Observaciones
Note el equipo de trabajo que:
- El código ha de correr en la terminal, así que si necesitara hacer gráficos, utilice letras, números y símbolos. Por
ejemplo, un bloque se puede dibujar como
[ ]
; los personajes, si los hubiere, pueden describirse mediante letras. - Cíñase al entregable solicitado. Tenemos en nuestra empresa equipos de diseñadores gráficos, y de programadores especializados en juegos que integrarán su trabajo a un proyecto de tipo consola que incluye el gameplay loop. (para una definición de este concepto, puede consultar la introducción de este trabajo).
Próxima reunión
Tentativamente, el equipo se podrá reunir con representantes técnicos de la empresa para charlar sobre el código el día Jueves 15 de junio a las 14:30 hs en el salón Falicov. Sin embargo, si fuera necesario, podrá solicitar una reunión previa enviando un correo electrónico al CTO de Terminal Frost.