Última actualización: 09/05/2018


Curso Académico: 2019/2020

Programación
(15366)
Grado en Ingeniería en Tecnologías de Telecomunicación (Plan: 445 - Estudio: 252)


Coordinador/a: BELLUCCI , ANDREA

Departamento asignado a la asignatura: Departamento de Informática

Tipo: Formación Básica
Créditos: 6.0 ECTS

Curso:
Cuatrimestre:

Rama de Conocimiento: Ingeniería y Arquitectura



El objetivo de este curso es introducir al estudiante en las técnicas básicas de programación de modo que aprenda a programar aplicaciones de cierta entidad en el ámbito de las telecomunicaciones. El lenguaje de programación elegido es Java, si bien las habilidades fundamentales adquiridas serán de carácter genérico de modo que puedan ser aplicadas a otros lenguajes de programación de uso habitual. Para lograr este objetivo el alumno debe adquirir una serie de conocimientos, capacidades y actitudes. Por lo que se refiere a los conocimientos, al finalizar el curso el estudiante será capaz de: - Comprender los fundamentos de la programación imperativa. - Entender los mecanismos de la programación estructurada. - Comprender y manejar los diferentes tipos de datos proporcionados por el lenguaje. - Comprender y manejar las estructuras de control de flujo. - Conocer la sintaxis del lenguaje Java. - Conocer los principales tipos de pruebas que se suelen aplicar a programas. En cuanto a las capacidades, éstas las podemos clasificar en dos grupos: uno de capacidades específicas y otro de capacidades más genéricas o destrezas. En cuanto a las capacidades específicas, al finalizar el curso el alumno será capaz de: - Analizar y entender programas con código desarrollado en Java. - Localizar y solucionar errores de sintaxis y de funcionamiento en un programa, dados unos requisitos. (PO b) - Analizar y entender algoritmos expresados en pseudocódigo y/o mediante diagramas de flujo. (PO a) - Diseñar y desarrollar algoritmos sencillos de acuerdo a unos requisitos prefijados. (PO a,c) - Desarrollar programas sencillos en lenguaje Java, tanto a partir de algoritmos especificados mediante diagramas de flujo o pseudocódigo, como directamente a partir de sus requisitos de funcionamiento. (PO a, c, k) - Adquirir conocimientos de algoritmos básicos de búsqueda y ordenamiento. (PO k) - Diseñar, desarrollar y ejecutar planes de pruebas de programas. (PO b,k) En cuanto a las capacidades generales o destrezas, durante el curso se trabajarán: - La capacidad de resolver problemas complejos descomponiéndolos en partes. (PO e) - La capacidad para trabajar en equipo y distribuir la carga de trabajo para afrontar problemas complejos. (PO d) - La capacidad de planificar el desarrollo de un proyecto de cierta entidad. (PO k) - La capacidad de buscar información utilizando recursos diversos para la solución de un problema. (PO a) - Habilidad para comunicarse de forma efectiva tanto de manera oral, escrita o gráfica a lo largo del desarrollo de las actividades propuestas en la asignatura (ejercicios, debates, prácticas, etc.). (PO g) - Que los estudiantes hayan demostrado poseer y comprender conocimientos en un área de estudio que parte de la base de la educación secundaria general, y se suele encontrar a un nivel que, si bien se apoya en libros de texto avanzados, incluye también algunos aspectos que implican conocimientos procedentes de la vanguardia de su campo de estudio. (CB1) - Que los estudiantes sepan aplicar sus conocimientos a su trabajo o vocación de una forma profesional y posean las competencias que suelen demostrarse por medio de la elaboración y defensa de argumentos y la resolución de problemas dentro de su área de estudio. (CB2) - Conocimiento de materias básicas y tecnologías, que le capacite para el aprendizaje de nuevos métodos y tecnologías, así como que le dote de una gran versatilidad para adaptarse a nuevas situaciones. (CG3) - Conocimientos básicos sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en ingeniería. (CG11) En cuanto a las actitudes, el alumno tras cursar el curso debería tener: - Una actitud crítica respecto a la idoneidad de distintas soluciones para problemas concretos. - Una actitud de colaboración y trabajo en equipo. - Actitud para utilizar la bibliografía y otros recursos de información para ampliar su conocimiento en otros
Descripción de contenidos: Programa
El objetivo de este curso es introducir al estudiante en las técnicas básicas de programación. El lenguaje de programación en que se desarrollará el curso es Java, si bien las habilidades adquiridas serán de carácter genérico de modo que puedan ser aplicadas a otros lenguajes de programación. PROGRAMA. 1. Fundamentos de programación. Adquirir los fundamentos básicos sobre la programación de ordenadores, haciendo especial hincapié en el concepto de algoritmo. 1.1. Arquitectura básica de un ordenador 1.2. Lenguajes de programación 1.3. Algoritmos y pseudocódigo 2. El lenguaje de programación Java. Sintaxis del lenguaje Java. 2.1. Características del lenguaje Java 2.2. La Maquina Virtual Java (JVM) 2.3. Tipos de datos básicos y operadores 2.4. Control de flujo 2.4.1. Sentencias condicionales 2.4.2. Bucles 2.5. Librería de clases de Java 2.6. Arrays de una y dos dimensiones 2.7. Funciones 3. El entorno de programación. Estudio del conjunto de herramientas y mecanismos que soportan la programación de aplicaciones. 3.1. Configuración del entorno 3.2. El ciclo de programación 3.3. Errores comunes en la programación
Actividades formativas, metodología a utilizar y régimen de tutorías
- Clases teóricas: 1,5 ECTS (PO a) Clases magistrales en las cuales se presentan conceptos teóricas sobre programación. - Clases prácticas: 1,5 ECTS (PO a, k) Clases en aulas de informática en las cuales se aprenderá a trabajar con un ¿entorno integrado de desarrollo¿ y se realizará el seguimiento del trabajo práctico de los alumnos. - Resolución de problemas: 1,0 ECTS (PO a, e, g, k) Aprendizaje basado en problemas. Trabajo autónomo por parte del alumno consistente en implementar por parejas una serie de ejercicios de programación. - Elaboración de proyecto: 1,0 ECTS PO (a, c, e, k) Aprendizaje basado en proyectos. Trabajo autónomo por parte del alumno consistente en implementar por parejas una serie de ejercicios de programación. - Estudio invidual: 1,0 ECTS (PO a, c, e, g) Trabajo autónomo por parte del alumno con el objetivo de preparar un examen escrito sobre aspectos teóricos de la asignatura.
Sistema de evaluación
  • Peso porcentual del Examen Final 50
  • Peso porcentual del resto de la evaluación 50

Bibliografía básica
  • Deitel, Paul J.. Java : cómo programar. Pearson Educación.
  • Donald E. Knuth. The Art of Computer Programming. Addison Wesley. 2011
  • L. Joyanes y I. Zahonero. Programación en Java: Algoritmos, programación orientada a objetos e interfaz gráfica de usuario. Mc Graw Hill. 2012
Bibliografía complementaria
  • Bell, D. y Parr, M.. Java for students. Prentice Hall..

El programa de la asignatura podría sufrir alguna variación por causa de fuerza mayor debidamente justificada o por eventos académicos comunicados con antelación.