Qué puede evaluarse
RA1: Reconoce la estructura de un programa informático, identificando y relacionando los elementos propios del lenguaje de programación utilizado.
Estructura de programaBloques de código (imports, variables globales, main, funciones auxiliares)Función principal (punto de entrada)Variabilidad de la estructura según el lenguajeIDE (Entorno Integrado de Desarrollo)Proyecto de desarrolloCompilación y depuraciónVariableTipo de datoÁmbito de variable (local/global)
RA2: Escribe y prueba programas sencillos, reconociendo y aplicando los fundamentos de la programación orientada a objetos.
ClaseObjetoAtributoPropiedadMétodoInstanciaEstado (atributos) y comportamiento (métodos)Paradigma de programaciónEncapsulación (contexto)Herencia (contexto)
RA3: Escribe y depura código, analizando y utilizando las estructuras de control del lenguaje.
ifelseelse ifswitchcasedefaultoperador ternariocondiciones booleanasanidamientofor
RA4: Desarrolla programas organizados en clases analizando y aplicando los principios de la programación orientada a objetos.
POOClaseObjetoPlantillaSintaxis de claseEstructura de claseAtributosMétodosComponentes de clasePropiedades
RA5: Realiza operaciones de entrada y salida de información, utilizando procedimientos específicos del lenguaje y librerías de clases.
ConsolaEntrada estándar (System.in)Salida estándar (System.out)Clase ScannerMétodos print/printlnFormato de cadenasEspecificadores de formatoEntrada y salida de informaciónLibrerías y APIs de E/SFlujos de caracteres
RA6: Escribe programas que manipulen información, seleccionando y utilizando tipos avanzados de datos.
ArrayÍndiceDeclaración de arrayInicialización de arrayAcceso a elementosRecorrido de arrayCE 3452: reconocimiento de librerías y clases relacionadas con tipos avanzadosjava.utilList<E>Collection<E>
RA7: Desarrolla programas, aplicando características avanzadas de los lenguajes orientados a objetos y del entorno de programación.
HerenciaSuperclaseSubclaseReutilización de códigoHerencia, superclase y subclase`final` aplicado a clases y métodos en Java`sealed`, `permits` y `non-sealed` en Java`sealed override` en C# como comparación técnicaClases abstractas y métodos abstractosDiferencia entre exigir implementación y forzar una relación de herencia
RA8: Utiliza bases de datos orientadas a objetos, analizando sus características y aplicando técnicas para mantener la persistencia de la información.
Bases de datos orientadas a objetos (BDOO)Persistencia de objetosIdentidad de objetoClases y tipos persistentesAtributosEncapsulaciónHerenciaPolimorfismoReferencias entre objetosRelaciones entre objetos
RA9: Gestiona información almacenada en bases de datos relacionales manteniendo la integridad y la consistencia de los datos.
SGBDRSQLDriver de base de datosCadena de conexiónConexiónDesconexiónCE c [3478]: escritura de código para almacenar informaciónCE d [3479]: recuperación y visualización de informaciónINSERTSELECT
Trampas habituales antes del examen
- Asumir que todos los lenguajes tienen una función 'main' obligatoria como en Java o C.
- Confundir una función auxiliar con el punto de entrada del programa al leer código por primera vez.
- No localizar correctamente la sección de imports/librerías cuando el lenguaje usa una sintaxis distinta (import, using, require, etc.).
- Confundir el concepto de 'proyecto' (conjunto de archivos y configuración gestionado por el IDE) con un único archivo de código fuente.
- Dificultades iniciales al configurar dependencias o estructura de carpetas al crear un nuevo proyecto en el IDE.
- Usar el tipo de dato incorrecto para una variable.
- Intentar modificar una constante después de su inicialización.
- Confundir el nombre de una variable con su valor.
- Declarar una variable global cuando bastaría con una local, generando efectos colaterales no deseados.
- Confundir un literal con una variable que contiene ese mismo valor.
- Confundir el operador de asignación (=) con el de comparación (==), por ejemplo escribiendo if (x = 5) en lugar de if (x == 5).
- No respetar la precedencia de operadores (ej. asumir que - y / se evalúan en el orden en que aparecen, cuando / tiene mayor prioridad), obteniendo resultados numéricos incorrectos.