Universidad de Costa Rica
Escuela de Ciencias de la Computación e Informática
San Pedro, Montes de Oca

Prof. Jeisson Hidalgo-Céspedes
Prof. Luis Gustavo Esquivel Quirós

Grupo Profesor Horario Consulta Asistente

01

Jeisson Hidalgo

K 16 a 17:40 306-IF
V 15 a 17:30 306-IF

K 17:40 a 18:40 321-IF2
V 17:30 a 18:30 321-IF2

Jose David Vargas Artavia

02

Luis Gustavo Esquivel

L 10 a 11:50 305-IF
J 09 a 11:50 305-IF

K 8-12 222-IF

María Chaves Salas

03

Luis Gustavo Esquivel

L 07 a 9:50 305-IF
J 07 a 8:50 305-IF

K 8-12 222-IF

Gabriel Gálvez Fallas

Recurso Peso Descripción

Carta al estudiante

 — 

Contrato sobre el curso entre la universidad, los profesores, y estudiantes

Ejemplos de clase

 — 

Ejemplos de programas realizados durante las lecciones

Material del curso

 — 

Ejercicios a resolver basados en los vídeos

Problemas a resolver

30%

Enlaces al juez automático (HackerRank) enviados por correo electrónico

Problemas inventados

+2%

Instrucciones para presentar problemas por crédito extra

Proyecto 01

15%

Fuga en la tubería

Proyecto 02

15%

Matrícula en la universidad

Examen 01

15%

Rotar la imagen

Examen 02

25%

Cola de eventos

Lección Fecha Temas Materiales

01

k13_ago

Carta al estudiante. Resolución de problemas (parte 1).

02

v16_ago

Control de versiones (Git).

🖼

03

k20_ago

Resolución de problemas (p.2). Entrada y salida en C (ej: formatear la fecha).

🖼

04

v23_ago

Problema: eliminar la nota más baja: análisis, diseño.

05

k27_ago

Problema: eliminar la nota más baja: implementación (p.1).

🖼 🖼

06

v30_ago

Problema: eliminar la nota más baja: implementación (p.2).

07

k03_set

Expresiones. Condicionales. Ciclos

08

v06_set

Problema: desigualdad triangular: análisis, diseño, implementación. Subrutinas.

09

k10_set

Encabezados (.h). Documentación (doxygen). Compilación condicional.

🖼

10

v13_set

Bibliotecas estáticas. Pruebas de caja negra, blanca (unitarias). Makefiles.

🖼

11

k17_set

Indirección. Punteros. Rastreo de memoria (máquina nocional).

🖼

12

v20_set

Arreglos. Punteros a funciones. Alojamiento dinámico. Fuga de memoria.

🖼

13

k24_set

Matrices.

🖼

14

v27_set

Matrices con void**. Proyecto01. Archivos binarios (p.1). Cadenas de caracteres (p.1).

🖼 🖼 🖼 🖼

15

v01_oct

Cadenas de caracteres (p.2). Archivos binarios (p.2)

🖼

16

v04_oct

Parámetros de salida (por referencia). Registros.

🖼

17

k08_oct

Bibliotecas dinámicas. Doxygen. Diseño por contratos. Programación defensiva.

🖼

18

v11_oct

Entrada y salida con C++. Clases. Objetos. Constructor. Parámetros por defecto.

🖼

19

k15_oct

Representación procedimental de los objetos.

🖼

20

v25_oct

Repaso de objetos. Fracción (p.1).

🖼

21

k29_oct

Fracción (p.2). Namespaces. Manipuladores de E/S. Referencias. Sobrecarga de operadores.

🖼 🖼

22

v01_nov

Clase String (p.1). Memoria dinámica con C++. Destructor. Concatenación (p.1).

🖼

23

k05_nov

Clase String (p.2). Espacio de nombres ecci. Constructor de conversión. Regla de los 5.

🖼

24

v08_nov

Clase String (p.3). operator<<. Operador de conversión. operator[]. Concatenación (p.2).

🖼

25

k12_nov

Arreglo dinámico genérico. Plantillas de clase y subrutinas.

🖼

26

v15_nov

Lista genérica. Clases anidadas. Iteradores. Operadores unarios. operator++.

🖼

27

k19_nov

Mapa (arreglo asociativo) genérico implementado con árbol binario de búsqueda.

🖼

28

v22_nov

Functor. Ordenar el mapa al revés. Trivia v1. Patrón singleton. Archivos con fstream.

🖼

29

k26_nov

Trivia v2. Herencia de registros. Atributos protegidos. rand(). Polimorfismo. virtual y override.

🖼

30

v06_dic

Trivia v3. Método factory. Método virtual puro. Clase abstracta. vtable. Rastreo de RTTI.

🖼

(Videos de las lecciones removidos por motivos de espacio)