Técnicas Actuales de Programación26843
- Centro
- Facultad de Ciencia y Tecnología
- Titulación
- Doble Grado en Física + Ingeniería Electrónica
- Curso académico
- 2024/25
- Curso
- 4
- Nº Créditos
- 6
- Idiomas
- Castellano
- Euskera
- Código
- 26843
DocenciaAlternar navegación
Guía docenteAlternar navegación
Descripción y Contextualización de la AsignaturaAlternar navegación
La programación de ordenadores es una competencia que en la actualidad afecta transversalmente a prácticamente todas las ramas del conocimiento tecnológico y científico. Ya es una herramienta indispensable en prácticamente cualquiera de sus disciplinas, y su dominio resulta necesario a sus profesionales. Particularizando en la ingeniería electrónica, esta se apoya fuertemente en la programación tanto para la simulación de dispositivos y fenómenos físicos, como para su aplicación en sistemas, puesto que la electrónica digital se encuentra en la base misma de la programación. En este sentido el ingeniero electrónico debe tener no poco dominio de la programación a todos los niveles, desde la más próxima al hardware, hasta la más abstracta. La asignatura Técnicas Actuales de Programación pretende cubrir este ámbito más abstracto con la aportación al alumnado del conocimiento del paradigma de programación en vigor (orientación a objetos, patrones, etc.) y de una visión global de la situación del mundo de la programación (aplicaciones web, software como servicio, lenguajes y técnicas emergentes, etc.)
Competencias/ Resultados de aprendizaje de la asignaturaAlternar navegación
Se capacita para
- plantear y resolver problemas con programación orientada a objetos con entornos gráficos o sin ellos;
- hacer uso de entornos de desarrollo, con las ayudas que aportan (debug, versionado, etc.);
- reconocer y utilizar los patrones más comunes, así como a formalizar las propias soluciones de este modo;
- aprovechar estructuras y mecanismos disponibles evitando la generación de soluciones ya existentes (y mejores);
- conocer las tecnologías más avanzadas que se están utilizando en la actualidad en este campo.
Contenidos teórico-prácticosAlternar navegación
Programa
1- Ingeniería del software
El proceso unificado de desarrollo de software. Desarrollo a partir de modelado. Entornos de ayuda al desarrollo
2- Conceptos de Orientación a Objetos y su implementación
Entorno y elementos básicos. Clase y Objeto. Instanciación. Encapsulamiento. Herencia. Clases abstractas. Interfaz. Polimorfismo. Clases genéricas. Gestión de caminos de error basada en objetos.
3- Bibliotecas de Clases
Clases nucleares y clases de utilidad. Entrada y salida de datos. Interfaces gráficos de usuario (GUIs). Programación con hilos
4- Los datos en las aplicaciones actuales
XML y sus aplicaciones más notables. XHTML. Bases de datos y SQL. Patrones para la persistencia.
5- Arquitecturas software
Arquitectura cliente-servidor (sockets). Aplicaciones y servicios Web. Otras arquitecturas.
MetodologíaAlternar navegación
Las clases magistrales se realizan con uso de multimedia y ejecución de ejemplos "en vivo". Los alumnos deben instalar todo el material recomendado en sus ordenadores personales para realizar los ejercicios propuestos. Si disponen de portátil pueden seguir con él las clases y los ejemplos. Todo el material diario se encuentra en la web del profesor antes o después de las clases en función de las necesidades. La función de las prácticas en aula de ordenadores no es tanto que los alumnos dispongan del material necesario -puesto que hoy en día disponen personalmente de él- sino que dispongan de un tiempo en que la interacción profesor-alumno se realice a demanda del alumno.
Sistemas de evaluaciónAlternar navegación
- Sistema de Evaluación Final
- Herramientas y porcentajes de calificación:
- Prueba tipo test (%): 20
- Examen de desarrollo de software en ordenador (%): 80
Convocatoria Ordinaria: Orientaciones y RenunciaAlternar navegación
- Método de renuncia de convocatoria: La no presentación al examen principal se considerará renuncia a la convocatoria.
- Criterios de evaluación:
* Se tendrán en cuenta todos los elementos de evaluación indicados, exigiendo un mínimo de 3,5 sobre 10 en cada una.
* Eventualmente cada alumno podrá, mediado el curso, optar por desarrollar un proyecto de software que participará en la evaluación con un porcentaje del 30%. Este porcentaje será detraído del correspondiente al examen en ordenador (quedando en un 50%). La evaluación del proyecto se realizará mediante su discusión/defensa con el profesor.
Convocatoria Extraordinaria: Orientaciones y RenunciaAlternar navegación
- Método de renuncia de convocatoria: La no presentación al examen se considerará renuncia a la convocatoria.
- Criterios de evaluación:
* Se tendrán en cuenta todos los elementos de evaluación indicados, exigiendo un mínimo de 3,5 sobre 10 en cada una.
* En caso de que el alumno optara en convocatoria ordinaria por el desarrollo un proyecto de software, podrá mantener dicha opción con la entrega de una versión actualizada, o renunciar a ella.
Materiales de uso obligatorioAlternar navegación
Entorno de desarrollo Netbeans y JDK
BibliografíaAlternar navegación
Bibliografía básica
Tutoriales básicos de Oracle (ver direcciones de Internet)
Bibliografía de profundización
Tutoriales avanzados de Oracle (ver direcciones de Internet)
Erich Gamma, Richard Helm, Ralph Johnson, John Vislides,; "Design Patterns. Elements of reusable object-oriented software", Adison Wesley, 1995.
Mark Grand, "Patterns in Java. Vol. 1:A catalog of reusable design patterns illustrated with UML", Wiley, 1998.
Revistas
Java Magazine (online - ver direcciones de Internet)
Direcciones web
http://gtts.ehu.es/German/ (seguir "docencia -> TAP")
http://docs.oracle.com/javase/tutorial/
http://www.oracle.com/technetwork/java/javamagazine/index.html
GruposAlternar navegación
01 Teórico (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-5 | 10:30-11:30 (1) | 09:30-10:30 (2) | |||
1-15 | 12:00-13:00 (3) | ||||
6-15 | 10:30-11:30 (4) |
01 Seminario-1 (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
6-15 | 10:30-11:30 (1) |
01 P. de Aula-1 (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
6-15 | 09:30-10:30 (1) |
01 P. Ordenador-1 (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
9-12 | 15:00-18:00 (1) | ||||
15-15 | 15:00-18:00 (2) |
31 Teórico (Euskera - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-5 | 10:30-11:30 (1) | 09:30-10:30 (2) | |||
1-15 | 12:00-13:00 (3) | ||||
6-15 | 10:30-11:30 (4) |
31 Seminario-1 (Euskera - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
6-15 | 10:30-11:30 (1) |
31 P. de Aula-1 (Euskera - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
6-15 | 09:30-10:30 (1) |
31 P. Ordenador-1 (Euskera - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
9-9 | 15:00-18:00 (1) | ||||
11-13 | 15:00-18:00 (2) | ||||
15-15 | 15:00-18:00 (3) |