Está en la página 1de 5

Fundamentos de Programación Orientada a Eventos

INFORMACIÓN BÁSICA

Código y Nombre Fundamentos de programación orientada a eventos

Créditos 3

Presenciales: 3 horas
Horas de trabajo
Trabajo independiente: 6 horas

Escuela de Ingeniería de Sistemas y Computación


Unidad(es) Académica(s)
Facultad de Ingeniería

Programas Académicos Programa académico de Ingeniería de sistemas

Prerrequisitos Ninguno

Validable Si

Habilitable No

Tipo de Asignatura Asignatura Básica (AB)

La asignatura favorece la
Formación General
Científico Tecnológico
Si x No

DESCRIPCIÓN GENERAL DEL CURSO

Este curso está orientado a comprender los principios teóricos y prácticos del desarrollo de aplicaciones
que cuenten con una interfaz gráfica de usuario. En este sentido, el estudiante desarrollará las habilidades
que le permitirán crear aplicaciones que hagan uso de periféricos básicos para la entrada y salida de
información (teclado y mouse), así como programas que no tienen una línea de ejecución predefina, sino
que esta depende de los eventos que genera el usuario por medio de la Interfaz Gráfica. Adicionalmente,
este curso afianza los conceptos de Programación Orientada a Objetos, al presentar la orientación o
eventos como una derivación natural de la orientada a objetos. Así mismo, a través de los diferentes casos
de estudio, se muestran el uso de las principales estructuras de datos, el manejo de persistencia básica con
archivos y la introducción de aspectos básicos de subprocesamiento.

De otra parte, este curso fomenta el desarrollo de habilidades para gestionar el trabajo individual y en
equipo, al igual que el conocimiento de herramientas y prácticas fundamentales que cualquier profesional
en el campo de la programación debe manejar para desempeñarse eficientemente en un entorno laboral.

No de Versión: **
No. y fecha acta unidad académica donde (En caso de modificación en la sección “desarrollo del curso” debe actualizarse de
se aprobó: lo contrario se mantiene)
Fecha actualización: **
DESARROLLO DEL CURSO

COMPETENCIA RESULTADO DE INDICADORES DE CONTENIDO


APRENDIZAJE LOGRO
Identifica los diferentes escuchas Implementacion de
que provee un lenguaje de Interfaces, Esuchas
RA-1.1 Utiliza escuchas Programación (Listeners), Clases
en la construcción de Adaptadores, Clases
interfaces gráficas de Selecciona Componentes Gráficos Internas
usuario, para crear necesarios para la construcción de
aplicaciones que una GUI
reaccionen a eventos
externos. Programa los escuchas disponibles
para un componente gráfico al
construir una GUI

Identifica problemas de Subprocesamiento


concurrencia en programas donde Múltiple
se presenten condiciones de carrera
en un recurso Redes (Cliente/Servidor)
C.E.13 Resolver
problemas de ingeniería
Usa monitores o candados en
identificando diferentes
programas que requieran
alternativas de solución
sincronización de procesos
y desarrollando sistemas
basados en TIC
Implementa programas que
RA-2 Aplica técnicas
terminen correctamente cuando
conservativas, en la
todas las tareas concurrentes hayan
sincronización de
finalizado
procesos, para el
desarrollo de programas
Utiliza monitores o variables de
concurrentes.
condición para bloquear hilos hasta
que se cumpla una precondición

Reconoce el concepto de deadlock a


través de un escenario con procesos
concurrentes

Implementa programas que utilicen


recursos de manera compartida
entre múltiples procesos

Describe un Programa Orientado a Arquitectura Modelo


Eventos en términos de un modelo, Vista Controlador
una vista y un controlador
Aspectos Básicos de
Implementa las clases de un Diseño de Interacción y
programa orientado a eventos Usabilidad
RA-3 Aplica el patrón acorde con el patrón modelo vista
C.E.4 Aplicar conceptos modelo vista controlador Excepciones
y principios implicados controlador, en la
en el proceso de diseño programación de Aplica conceptos de diseño visual Aplicación de Estructura
de interfaces gráficas de interfaces gráficas de en la construcción de GUIs en un de Datos y Colecciones
usuario durante el usuario, para el Programa Orientado a Eventos
desarrollo de desarrollo de Flujos de Datos
aplicaciones software aplicaciones Desarrolla documentación y ayudas
interactivas. que den soporte a la GUIs que
conforman un Programa Orientado
a Eventos

Desarrolla programas que manejen


de manera básica fallas humanas y
del sistema
DESARROLLO DEL CURSO

COMPETENCIA RESULTADO DE INDICADORES DE CONTENIDO


APRENDIZAJE LOGRO
Usa diferentes estructuras de datos
(linked lists,stacks, queues, sets,
and maps) en el desarrollo de
Programas Orientados a Eventos

Usa archivos para guardar


información persistente en
programas orientados a eventos

Identifica posibles errores en el Entorno Integrado de


código fuente utilizando Desarrollo
herramientas de debug
Estilo de Programación
RA-4 Programa en un Documenta el código fuente de un
C.E.14 Desarrollar
Ambiente de Desarrollo programa usando estándares y Estándar para
proyectos de ingeniería
Integrado, soluciones herramientas documentación del código
analizando, modelando,
orientadas a eventos fuente
diseñando, evaluando,
tomando ventaja de las Emplea estándares de estilo de
gestionando,
herramientas programación que contribuyan a la
documentando,
disponibles, para legibilidad y mantenibilidad del
desplegando e
compilar, depurar y software.
implementando sistemas
documentar el código
basados en TIC
fuente Revisa hasta qué punto el código de
otro programador cumple con los
estándares de documentación y
estilo de programación establecidos
para el proceso de desarrollo

Lleva un calendario para la Herramientas para


planificación de su actividad de gestión del tiempo y
aprendizaje e identifica aspectos de organización del trabajo.
RA-5 Emplea
éxito y fracaso en su cumplimiento.
herramientas de
C.G.2 Utilizar un Herramientas para
autorregulación, que le
pensamiento crítico y Utiliza mapas de pensamiento para organización de ideas y
permitan comprender y
creativo que le permite establecer definiciones, representación de
cuestionar su proceso de
aprender de forma descripciones, clasificaciones, conceptos.
aprendizaje, para
autónoma y permanente distinciones y separaciones,
reflexionar entorno al
contrastes y analogías de los
mismo.
aspectos teóricos del curso e
identifica aspectos a reforzar para
mejorar su aprendizaje.

Configura un sitio básico de Herramientas para


RA-6 Emplea algún GitHub para los proyectos del curso gestionar los cambios del
C.G.4: Trabajar en código fuente
sistema de gestión de
equipo y aplicar
proyectos y control de
diferentes formas y Lleva un control de versiones de
versión de código, que
herramientas de sus proyectos de curso con Git
le permita construir
comunicación durante la
programas orientados a
realización de proyectos
eventos de manera Aplica un flujo de trabajo
de computación
colaborativa. profesional en sus proyectos
(merge, pull request, fork, etc.)
METODOLOGÍA

El curso se desarrolla en las salas de cómputo, en clases semanales de 3 horas de las cuales 1 es
teórica y 2 son prácticas. En cada clase se aborda al menos un caso de estudio orientado a resolver
problemas relacionados con los resultados de aprendizaje que se quieren alcanzar. Dentro del proceso
formativo se considera como estrategia de aprendizaje la resolución de problemas, planteándose un
conjunto de mini proyectos en el contexto de juegos clásicos y arcades que de manera lúdica retan al
estudiante a poner en práctica los conceptos vistos en clase.

RECURSOS DE APOYO

Para el desarrollo efectivo del curso se requiere de una sala de cómputo con acceso a internet, con
puestos individuales de trabajo y que esté provista de video beam. Además, del uso del Campus
Virtual o Google Classroom.

EVALUACIÓN DEL CURSO

La evaluación del curso incluye cinco mini proyectos que se realizarán en grupo, un parcial y el diario
de aprendizaje que se realizarán de manera individual. Los porcentajes asignados para cada resultado
de aprendizaje son los siguientes:

Resultado de aprendizaje Actividades evaluativas Porcentaje parcial Porcentaje total


RA-1 Parcial 1 27
Mini Proyecto 1 6
Mini Proyecto 2 6
Mini Proyecto 3 6
Mini Proyecto 4 5
Mini Proyecto 5 5
RA-2 Parcial 1 12
Mini Proyecto 4 4
Mini Proyecto 5 8
RA-3 Parcial 6 30
Mini Proyecto 1 4
Mini Proyecto 2 4
Mini Proyecto 3 5
Mini Proyecto 4 5
Mini Proyecto 5 5
RA-4 Parcial 1 11
Mini Proyecto 1 2
Mini Proyecto 2 2
Mini Proyecto 3 2
Mini Proyecto 4 2
Mini Proyecto 5 2
RA-5 Diario de Aprendizaje 10 10
RA-6 Mini Proyecto 1 2 10
Mini Proyecto 2 2
Mini Proyecto 3 2
Mini Proyecto 4 2
Mini Proyecto 5 2

BIBLIOGRAFÍA

ü Deitel H. M., Deitel P.J. Cómo programar en Java. Prentice-Hall, Hispanoamericana, S.A.
Quinta edición, 2003, México.
ü Lynn, S. Andrea. Interactive programming in Java. MIT, 1999, USA.
http://www.cs101.org/ipij/
ü Lewis Bil, Berg Daniel J. Multithread programming with Java technology. Sun
Microsystems, Inc. 2000, USA.
ü Martin, Robert C. UML para programadores Java. Pearson Prentice Hall. 2004.
ü Wang. Paul. Java con programación orientada a objetos y aplicaciones en la WWW. Internacional.
Thompson, 2000, México.

Otros Recursos

ü Instalación de Java: Aquí puede descargar el JDK


http://www.oracle.com/technetwork/java/javase/downloads/index.html

ü IDE Eclipse: Debe instalar previamente el JDK. http://www.eclipse.org/ide/

ü Documentación de Java: https://docs.oracle.com/javase/8/


ü https://github.com/
ü https://www.atlassian.com/es/software/jira

También podría gustarte