CI0202 - Principios de Informática

Universidad de Costa Rica
Escuela de Ciencias de la Computación e Informática
Grupo 11: K11-13 103-IF, V11-13 212-IN.

Profesor Jeisson Hidalgo-Céspedes
Correo: jeissonh@gmail.com
Casillero: 04

Este curso pretende introducir a estudiantes de ingeniería y áreas afines a conceptos fundamentales de informática y la programación de aplicaciones sencillas en un lenguaje orientado a objetos.

Documentos

  1. Carta al estudiante. Contiene una descripción general del curso, sus objetivos, temario, evaluación y otros detalles. Es una especie de contrato entre el profesor, los estudiantes y la escuela.
  2. Material de referencia del curso. Notas y otros apuntes del profesor con el propósito de apoyar al estudiante en su aprendizaje.
  3. Evaluaciones:

    Tipo Evaluación Enunciado Solución
    Tareas Tarea01 Movimiento uniformemente acelerado Solución 1 | Solución 2
    Tarea02 Factores primos y ternas pitagóricas
    Tarea03 El pez grande se come al pequeño
    Tarea04
    Quices Quiz01 Mejor precio Solución 1
    Quiz02 Potencias enteras Solución 1
    Quiz03
    Quiz04
    Exámenes Examen01 Conjetura de Goldbach Solución 1 | Solución 2
    Examen02 Juego con una baraja de naipes
    Examen02b Juego Mahjong (reposición)
    Examen03 Campeonato de RoboCode

    Evaluaciones del semestre anterior.

    Descargar la clase Keyboard.java.

Recursos de utilidad

La siguiente es una lista de recursos a utilizar durante el curso. Es conveniente tenerlos a mano, quizá estableciéndolos como marcadores de su navegador preferido.

  1. The Java™ Platform, Standard Edition 7 API Specification. Documentación oficial de las clases estándar de Java. No es documentación sobre el lenguaje de programación en sí.
  2. The Java™ Language Specification (Java SE 7 Edition). Documentación oficial sobre el Lenguaje de programación Java, también distribuido en formato de libro.
  3. The Java™ Tutorials. Tutoriales (documentación resumida) sobre varios temas particulares de la programación de Java.
  4. Introduction to Programming Using Java, Sixth Edition. Libro libre introductorio sobre programación en Java, escrito por David J. Eck.

Software

El siguiente es un listado de programas que el estudiante puede encontrar de interés o utilidad en el cumplimiento de sus tareas en el curso.

  1. Java SE JDK. Es el paquete oficial que contiene el conjunto de herramientas mínimas necesarias para construir aplicaciones en Java (JDK: Java Development Kit).
  2. Dr. Java. Es un ambiente de desarrollo (IDE: Integrated Development Environment) libre, pequeño, liviano y eficiente. Sin embargo carece de características avanzadas deseables. Requiere que el JDK esté instalado en la computadora donde se va utilizar.
  3. BlueJ. Ambiente desarrollo ideado para la enseñanza y aprendizaje del lenguaje de programación Java.
  4. Netbeans. Ambiente de desarrollo avanzado. Permite el desarrollo amigable de aplicaciones con interfaces gráficas. Es pesado.
  5. Eclipse. Es un ambiente de desarrollo (IDE) libre, avanzado, apto para el desarrollo de aplicaciones extensas. Sin embargo, es pesado y más complejo de usar. Requiere que el JDK esté instalado en la computadora donde se va utilizar.
  6. Jeliot. Este software recibe un programa en Java y crea una representación visual del uso de memoria que hace dicho programa, lo cual es muy útil para entender lo que ocurre internamente en ellos.

Videojuegos

  1. Greenfoot. Ambiente de desarrollo que facilita la creación de aplicaciones intensivas en visualización, como simulaciones y videojuegos.
  2. light-Bot. Videojuego donde se debe programar un robot para que encienda todos los bloques azules en varios escenarios.
  3. Robocode. Ambiente de simulación de batallas de tanques. El estudiante debe programar su tanque con lógica de supervivencia con el fin de resultar victorioso en contiendas contra tanques de otros concursantes.