T.A.P.

Técnicas Actuales de Programación

Curso: 2025/26

Calendario

Septiembre
LMXJV
[1]89101112
[2]1516171819
[3]2223242526
[4]29    
Octubre
LMXJV
[4] 30123
[5]678910
[6]1314151617
[7]2021222324
[8]27282930 
Noviembre
LMXJV
[8]    31
[9]34lab567
[10]1011lab121314
[11]1718192021
[12]2425lab262728
Diciembre
LMXJV
[13]12lab345
[14]89101112
[15]151617lab1819
Nno lectivo,  Nfiesta,  Nestudio,  Nexámenes,  Nclase futura,  Nclase pasada,  Nclase anulada,  Nclase recuperada

Clases: {aula: 1.4} {horario: lunes 12:00-12:50, jueves 10:40-11:30, viernes 9:40-10:30}
Laboratorios: {Laboratorio: aula 0.23} {horario: 15:00-17:30}
Tutorias {con las excepciones que puedan indicarse en GAUR}: Miércoles de 9h a 13h y Jueves de 8h a 10h

Programa ⇓

Evaluación ⇓

Desarrollo

Para cualquier consulta podéis escribir a german.bordel@ehu.es

SEPTIEMBRE

lunes 08 de septiembre de 2025
  • Presentación usando como apoyo esta misma página web
jueves 11 de septiembre de 2025

TEMA 1 - INTRODUCCIÓN

1.1.- ["Algorithms + Data Structures = Programs" Niklaus Wirth]
 → ¿Sólo necesitamos programas (lenguajes)? no, Programas + Ingeniería del software = Soluciones.

viernes 12 de septiembre de 2025
  • Persistencia de datos...

1.2- Lenguajes de programación: Origen, situación actual y características deseables (el caso de Java) [pdf]

lunes 15 de septiembre de 2025

1.2- 👇 Falta comentar la página 19 y las addenda
Lenguajes de programación: Origen, situación actual y características deseables (el caso de Java) [pdf]

1.3- Máquina virtual [el concepto (re)nace con Java] [pdf]

1.4- Obtención e instalación del software a utilizar [pdf]

jueves 18 de septiembre de 2025

TEMA 2 - USO DEL ENTORNO DE DESARROLLO

2.1.- Ejemplo inicial: el programa "Hola Mundo" (adelantamos conceptos que se afianzan más abajo)

viernes 19 de septiembre de 2025

2.1.- Ejemplo inicial: el programa "Hola Mundo" (adelantamos conceptos que se afianzan más abajo)

lunes 22 de septiembre de 2025

2.1.- Ejemplo inicial: el programa "Hola Mundo" (adelantamos conceptos que se afianzan más abajo)

jueves 25 de septiembre de 2025

2.2.- Bibliotecas de clases: su estructura
Bibliotecas de clases [pdf]
Biblioteca de clases [10 min.]
Biblioteca de clases desde la versión 9 -módulos- [5 min.]

2.3.- Compilación y ejecución (... y desensamblado, decompilación y ofuscación)
Ejecutables para compilación, etc. [pdf]

2.4.- Generación de documentación

viernes 26 de septiembre de 2025
  • Elementos relacionados (probaremos lo que sea posible con Netbeans sobre "HolaMundo":
    • (Puntos anteriores ya vistos)
    • Convenios de nombrado (identificadores), y en general convenios de codificación.
    • Espacios de nombres (ejemplos aquí → lo veremos con la biblioteca COLT y a raiz de ello comentaremos algo de Patrones y veremos los tipos primitivos en Java con el pdf del tema 3 que se encuentra abajo en el apartado "Extras".)
    • Hay más...
lunes 29 de septiembre de 2025
  • Elementos relacionados (probaremos lo que sea posible con Netbeans sobre "HolaMundo":
    • (Puntos anteriores ya vistos)
    • Refactoring;
  • (Documentar evita cosas como esta, pero hay que tener cuidado de no caer en esto)

Adelanto de los puntos 1 y 2 del
TEMA 6 - INTERFACES GRÁFICOS

OCTUBRE

jueves 02 de octubre de 2025
Construir un interfaz de calculadora simple.
En cursos de años anteriores este era un ejercicio para dominar el diseño de interfaces con Swing y la ayuda de Netbeans. Ahora se trata de que lo intentéis con una IA como primera experiencia de generación de código efectivo. A modo de ejemplo, podéis poner como objetivo el siguiente interfaz que se ha hecho con Swing (podéis intentarlo con JavaFX también):
interfaz de calculadora estrecho    interfaz de calculadora ancho

Recibidos en cursos anteriores

Si no le decís a la IA que sólo queréis el interfaz gráfico, os dará código para que la calculadora funcione, y ese código requiere una explicación que veremos un poco más adelante.

Dedicaremos la clase del jueves 9 a compartir las experiencias con este ejercicio

TEMA 4 - ELEMENTOS RELACIONADOS CON LA ORIENTACIÓN A OBJETOS

viernes 03 de octubre de 2025
lunes 06 de octubre de 2025

Hacemos un inciso para ver el punto 3 del
TEMA 6 - INTERFACES GRÁFICOS

jueves 09 de octubre de 2025

Sesión para compartir experiencias con el uso de la IA para generar la calculadora planteada como ejercicio.

Hemos pedido a M365 Copilot que haga el interface de la calculadora mostrada en esta página y hemos entendido y retocado el código.

viernes 10 de octubre de 2025

Volvemos al
TEMA 4 - ELEMENTOS RELACIONADOS CON LA ORIENTACIÓN A OBJETOS

lunes 13 de octubre de 2025
jueves 16 de octubre de 2025
viernes 17 de octubre de 2025
lunes 20 de octubre de 2025

TEMA 5 - MECANISMO DE TRATAMIENTO DE EXCEPCIONES Y ERRORES

jueves 23 de octubre de 2025

Clase anulada para poder asistir a 👇

Conferencia: Jueves 23 de Octubre 10:30h - Sala Adela Moyua. Fac. Ciencia y Tecnología

Título: "Aplicaciones de modelos de IA para aprendizaje por refuerzo con NVIDIA".

Conferenciante: Asier Arranz, Senior Staff Developer de NVIDIA, que es la mayor productora de tarjetas gráficas (GPUs) imprescindibles para el desarrollo de las tecnologías actuales basadas en redes neuronales, incluidos los famosos LLMs, que necesitan muchos recursos computacionales.

Resumen: El aprendizaje por refuerzo es una técnica de Machine Learning por medio la cual un sistema que interactúa con su entorno aprende de éste mediante realimentaciones premiadas (refuerzos), o castigadas, para mejorar sus decisiones. En algunos escenarios esta realimentación la proporciona una persona. Se utiliza en Teoría de Control, Robótica e Interacción persona-máquina, entre otros muchos campos de aplicación.

En la charla se explicará esta técnica, así como la forma de implementarla y aplicarla. Parece que el ponente va a presentar también el último modelo de GPU de NVIDIA aún fuera del mercado. La charla es una de las actividades de la Semana Europea de la Robótica. En ella se propone también la participación en el Hackaton LeRobot (conjunto de datos, herramientas y modelos en abierto que Hugging Face proporciona). Para los posibles interesados se proporciona el enlace para inscribirse (gratis).

viernes 24 de octubre de 2025

Extras

Tema retirado del desarrollo de las clases y dejado como consulta

TEMA 3 - ELEMENTOS BÁSICOS DEL LENGUAJE

Curiosidades sobre lenguajes e ingeniería del software

"Not So Frequently Asked Questions"
En ocasiones alguna pregunta nada habitual puede ser de interés general....