Proyecto 1: traductor de ejercicios de programación

Entregable 1

Fecha límite: 2017-may-08 11:59 p.m. Consideraciones:

  1. Los entregables se revisan en un repositorio privado de control de versiones en la fecha de corte. Ambos miembros del equipo deben agregar commits sustanciales. Es recomendable leer los primeros tres capítulos del libro libre Pro Git de Scott Chacón.
  2. El problema es comunicado verbalmente. Los estudiantes deberán redactar en un documento una descripción del problema a resolver. Dado que el problema es necesario para poder comprender la solución almacenada en el repositorio, los miembros del equipo describirán el problema en el archivo README.md de su repositorio. La descripción puede hacerse en español. Entre más detallada y clara la descripción del problema, mejor.
  3. Cada estudiante deberá agregar al repositorio compartido exerciseconv un ejercicio inventado. El ejercicio estará en su propia carpeta y contendrá varios archivos. En ese mismo repositorio, cada estudiante convertirá manualmente el ejercicio, del formato de carpeta al formato XML como se hizo en clase. Se puede consultar el ejemplo del profesor en la subcarpeta tests/remove_lowest_grade el cual se hizo en clase.
  4. Cada estudiante deberá asegurarse de que su ejercicio inventado en XML sea un documento válido ante el tipo de documento ejercicio de programación. Los cambios que el profesor realizó para hacer el ejercicio remove_lowest_grade un documento válido pueden verse en la bitácora de cambios del repositorio copmartido. El estudiante puede consultar material sobre XML. Para validar un documento necesita instalar un analizador de XML, como se explica en el ejercicio xml_inventory_8 del mismo material.
  5. Cuando su ejercicio inventado sea válido, puede copiarlo a su repositorio de control de versiones para el proyecto. Estos ejercicios serán los casos de prueba. Es decir, su repositorio tendrá dos casos de prueba de los dos integrantes. Cuando el profesor lo indique, podrá copiar los restantes casos de prueba del respositorio compartido exerciseconv a su repositorio del proyecto.

Recursos de utilidad

Leer de XML con libxml2

Ejemplo para leer de un archivo XML en C. Nótese los comandos en Linux para invocar al compilador y linker. Se replica aquí por conveniencia:

]]>
With libxml2, a program which displays the name of the root element and the names of its children. Obtener código fuente.