Programacion Avanzada
Programacion Avanzada
FACULTAD DE INGENIERIA
SYLLABUS
Alternativas metodológicas:
Clase Magistral (X), Seminario ( ), Seminario – Taller ( ), Taller (X), Prácticas (X), Proyectos tutoriados (X),
Otro: ________________________
HORARIO:
DIA HORAS SALON
Desarrollar los elementos conceptuales necesarios para hacer una buena elección tecnológica y
filosófica, y con ella poder construir programas bien diseñados.
OBJETIVOS ESPECÍFICOS
1. Realizar programas computacionales basados en estándares, normas y principios de diseño y
reutilización que permitan ofrecer soluciones eficaces.
2. Establecer los criterios de selección de un lenguaje de programación que garanticen el desarrollo
adecuado de un proyecto informático.
3. Identificar propuestas de desarrollo importantes y robustas que garanticen una buena solución
informática.
4. Identificar algunas de las tendencias del modelo OO importantes para la solución de problemas más
complejos y puntuales.
5. Manejar elementos conceptuales de mayor profundidad sobre el modelo OO.
COMPETENCIAS DE FORMACIÓN:
Competencias que compromete la El estudiante está en capacidad de pensar ordenadamente para
asignatura: modelar una solución a un problema, en donde se debe analizar e
implementar dicha solución aplicando los elementos conceptuales
necesarios para poder construir de manera bien formada esta solución.
Competencias específicas de la Conoce y utiliza las técnicas de gestión de almacenamiento de
asignatura: objetos.
Conoce y plantea correctamente las relaciones entre clases,
paquetes y subsistemas.
Realiza una correcta gestión de código.
Aplica los principios fundamentales para obtener calidad en los
programas.
Conoce y aplica técnicas de programación concurrente.
Conoce y aplica técnicas de programación distribuida.
Conoce y aplica técnicas de persistencia con bases de datos.
Competencias Transversales a las El alumno tiene la capacidad de discernir que tecnología debe
que contribuye la asignatura: utilizar para la resolución de problemas particulares.
Comunica ideas de manera clara de forma oral o escrita.
Actúa estratégicamente dentro de un grupo de trabajo para el
desarrollo de proyectos.
PROGRAMA SINTÉTICO:
5. Programación Concurrente.
5.1 Proceso y Tarea
5.2 Monoproceso y Multiproceso
5.3 Concurrencia en Recursos
5.4 Asignación de memoria en programación concurrente: heap y stack
5.5 Estados de un hilo
5.6 Implementación y gestión de hilos
7. Temas Complementarios
7.1 Persistencia con serialización
7.2 Comunicación distribuida usando servicios web
7.3 Diagramas de Despliegue
7.4 Consumo de servicios web on-line
III. ESTRATEGIAS
Metodología Pedagógica y Didáctica:
Asistencia a clases expositivas y de discusión
Elaboración y lectura de paper (documentación).
Se debe procurar incentivar el trabajo de grupo más que el trabajo individual. (se
recomienda trabajar en grupos de dos o tres estudiantes)
Implementación y prueba de prototipos (programas) en laboratorio de computación
Horas Total Horas
Horas
Horas profesor / Estudiante / Créditos
Estudiante / semana
semana semestre
Tipo de
TD TC TA (TD + TC) (TD + TC +TA) X 16 semanas
Curso
2 4 6 6 12 192 3
Trabajo Presencial Directo (TD): trabajo de aula con plenaria de todos los estudiantes.
Trabajo Mediado_Cooperativo (TC): Trabajo de tutoría del docente a pequeños grupos o de forma
individual a los estudiantes.
Trabajo Autónomo (TA): Trabajo del estudiante sin presencia del docente, que se puede realizar en
distintas instancias: en grupos de trabajo o en forma individual, en casa o en biblioteca, laboratorio, etc.)
IV. RECURSOS
Medios y Ayudas:
1. Aula normal con tablero para sesiones de cátedra y para sesiones de discusión.
2. Disponibilidad para acceder a proyector multimedia.
3. Laboratorio de computación, para las sesiones de laboratorio.
4. IDE’s para desarrollar en java (Eclipse, Netbeans, …)
5. Página web para publicar material didáctico, guías de ejercicios, soluciones,
tareas, etc.
6. Acceso al material bibliográfico recomendado.
7. Acceso al material bibliográfico digital a través de acceso a bases de datos.
8. Asignación de una persona que tenga las plenas competencias del curso (monitor)
para asesorar a los estudiantes en dudas durante las sesiones del laboratorio de
computación.
TEXTOS GUIA
TEXTOS COMPLEMENTARIOS
DIRECCIONES DE INTERNET
www.objectmentor.com
https://oai.oracle.com/en/index1.html
http://msdn.microsoft.com/es-es/magazine/cc546578.aspx
http://sourcemaking.com/
http://download.oracle.com/javase/6/docs/api/
http://download.oracle.com/javase/6/docs/
V. ORGANIZACIÓN / TIEMPOS
Espacios, Tiempos, Agrupamientos:
Se recomienda trabajar una unidad cada cuatro semanas, trabajar en pequeños grupos de estudiantes,
utilizar Internet para comunicarse con los estudiantes para revisiones de avances y solución de preguntas
(esto considerarlo entre las horas de trabajo cooperativo).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 Relaciones entre clases, paquetes y espacios de
nombres como subsistemas.
5 Programación Concurrente.
7 Temas Complementarios
VI. EVALUACIÓN
TIPO DE EVALUACIÓN FECHA PORCENTAJE
Parcial escrito, Guías de ejercicios resueltas,
Informes de conceptos basado en análisis
PRIMER CORTE 35%
(Paper's), Pruebas orales/escritas rápidas
(Quizes), Ejercicios de laboratorio.
Las fechas estarán
Parcial escrito, Guías de ejercicios resueltas,
acorde a las
Informes de conceptos basado en análisis
programadas por el
SEGUNDO CORTE (Paper's), Pruebas orales/escritas rápidas 35%
calendario académico
(Quizes), Ejercicios de laboratorio. Desarrollo
para el periodo en
de Proyecto
curso
Desarrollo de Proyecto. Informe de
desempeño y sustentación de un prototipo
PROYECTO FINAL 30%
funcional que evalúe las competencias
exigidas.
ASPECTOS A EVALUAR DEL CURSO
Claridad y entendimiento de los conceptos.
Que se haya identificado correctamente el problema y que el modelo lo represente adecuadamente.
Que la solución diseñada resuelva el problema.
Apego a la formalidad y estándares requeridos.
Que el análisis de corrección sea exhaustivo.
Que el prototipo corresponda al modelo diseñado y no presente errores de sintaxis.
La asistencia a las clases magistrales y a los laboratorios.
El esfuerzo y dedicación en la resolución de problemas.
Que la documentación permita reconocer la forma en que se ha abordado el problema y la
estructura del programa implementado.
En las pruebas escritas se consideran en forma parcial los aspectos considerados en proyectos de
programación bajo problemas que requieren un menor tiempo de desarrollo y en una modalidad que
no requiere uso del computador, así como la comprensión conceptual.
DATOS DEL DOCENTE
NOMBRE :
PREGRADO :
POSTGRADO :
ASESORIAS: FIRMA DE ESTUDIANTES
NOMBRE FIRMA CÓDIGO FECHA
1.
2.
FIRMA DEL DOCENTE
_________________________________