General
Programación en Lenguaje Java (2015)
Programación en Lenguaje Java (2015)
|
Programación en Lenguaje Java (2015)
Profesores Michael González Harbour Mario Aldea-RivasDepartamento de Ingeniería Informática y Electrónica
|
Curso básico sobre "Programación en Lenguaje Java" en el que se ven los fundamentos de la programación de computadores y del razonamiento sobre los programas. Se pretende familiarizarse con las nociones fundamentales de la programación orientada a objetos así como ser capaz de documentar el código fuente de un programa.
Basic course on the Java Programming Language including the fundamentals of computer programming and reasoning about programs. The aim is to become familiar with the fundamentals of object-oriented programming and to be able to document the source code of a program.
Palabras Clave de la AsignaturaPolymorphism, Polimorfismo, Java, Modularidad, Inheritance, Programming, Pruebas de Módulos, Modularity, Input and Output, Class Diagrams, Exceptions, Programación orientada a objetos, Unit Testing, Object-Oriented Programming, Entrada y Salida, Herencia, Programación, Excepciones, Diagramas de Clases. |
Datos identificativos de la Asignatura
|
Lenguajes de alto nivel.
El proceso de compilación.
El ciclo de vida del software.
Introducción al análisis de requisitos.
Diagrama de Clases en UML.
Diseño orientado a objetos.
Especificación de los métodos.
Programación orientada a objetos.
Concepto de algoritmo.
Concepto de clase y objeto.
Diagramas de clases.
Estructura de un programa.
Estructura de un método.
Tipos primitivos.
Variables y constantes.
Operadores y expresiones.
Conversión de tipos.
Uso de funciones matemáticas.
Declaración de objetos.
Strings.
Composición de objetos.
Atributos y métodos estáticos.
Instrucción condicional.
Instrucción condicional múltiple.
Instrucciones de bucle.
Recursión.
Descripción de algoritmos mediante pseudocódigo.
Arrays y tablas unidimensionales.Algoritmos de recorrido y búsqueda.
Arrays multidimensionales.
Tipos enumerados.
Entrada/salida de texto y de caracteres.E/S de números.
Gráficas.
Dibujos.
Menús de botones.
Concepto de clase y objeto.
Creación e inicialización de objetos.
Tipos primitivos, referencias y objetos.
Recolector de basura.
Comparación de objetos.
Métodos y campos de clase (o estáticos).
Anidamiento de clases.
Conceptos de modularidad y abstracción.
Modificadores de acceso básicos.
Paquetes.
Módulos genéricos.
Programación con módulos predefinidos.
Documentación del código fuente.
Herencia.
Clases abstractas.
Polimorfismo.
La clase Object.
Tratamiento de errores por paso de parámetros.
Excepciones.
Bloques de tratamiento excepciones.
La cláusula Finally.
Patrones de tratamiento de excepciones.
Jerarquía de las excepciones.
Lanzar excepciones.
Usar nuestras propias excepciones.
Utilización de excepciones.
Conceptos básicos.
Flujos de datos (Streams).
E/S de texto.
E/S de texto con formato.
E/S binaria.
Verificación y validación.
Pruebas del software.
Caja negra: particiones de equivalencia.
Herramienta JUnit.
D.J. Barnes & M. Kölling (2011): «Objects first with Java: A practical introduction using Bluej». Prentice Hall.
Deitel, Paul J. & Deitel, Harvey M. (2012): «Cómo programar en Java». 9ª edición. Pearson Educación, Mexico.
Ken Arnold, James Gosling & David Holmes (2000): «El lenguaje de programación Java». 3ª edición. Addison-Wesley.
S. Zakhour, S. Hommel, J. Royal, I. Rabinovitch, T. Risser & M. Hoeber (2006): «The Java Tutorial Fourth Edition». Pearson Education. The Java Tutorials.
A.V. Aho, J.E. Hopcroft & J.D. Ullman (1988): «Estructuras de datos y algoritmos». Addison-Wesley.
Uno de los siguientes entornos de desarrollo, que funcionan tanto sobre sistema operativo Windows como sobre Linux.
- Entorno de desarrollo Bluej, con compilador Java de Sun, versión 7 o superior.
- Entorno de desarrollo Eclipse JDK, versión Luna.
PA-F-005. Práctica 2.3. Simulación del movimiento orbital de un satélite y su planeta.
PA-F-012. Práctica 3.4. Cálculos con señales cuadradas.
PA-F-013. Materlales Práctica 3.4.
PA-F-021. Práctica 6.2. Implementación. Diseño e implementación. Estadísticas equipo baloncesto.
PA-F-023. Práctica 6.3. Diseño e implementación. Comisiones de venta.
PA-F-024. Materlales Práctica 6.3.
PA-F-025. Práctica 7.1. Paquetes. Señales movimiento ondulatorio.
PA-F-027. Práctica 7.2. Diseño e implementación. Reparaciones taller.
PA-F-028. Materlales Práctica 7.2.
PA-F-030. Práctica 8.2. Herencia. Empresa de seguros (continuación de la Práctica 8.1).
PA-F-038. Práctica 10.1. Ajuste polinómico de un conjunto de puntos.
EP-F-001. Problema 2.1. Datos de una clase. Tipos primitivos; Sangrado.
EP-F-002. Problema 2.2. Practicar con literales, clases, expresiones y compatibilidad de tipos.
EP-F-003. Problema 2.3. Practicar con expresiones.
EP-F-004. Problema 3.1. Practicar con strings e instrucciones condicionales.
EP-F-005. Problema 3.2. Practicar con instrucciones de control.
EP-F-006. Problema 4.1. Practicar recorridos con Arrays.
EP-F-007. Problema 4.2. Practicar con arrays y ArrayList.
EP-F-008. Problema 4.3. Practicar con ArrayList, Arrays multidimensionales y tipos enumerados.
EP-F-009. Problema 6.1. Diseño. Empresa de alquiler de vehículos con conductor.
EP-F-010. Problema 6.2. Cuestiones sobre referencias y objetos.
EP-F-011. Problema 7.1. Uso de ArrayList. Agenda de contactos.
EP-F-012. Problema 8.1. Precio del alquiler de vehículos.
EP-F-013. Problema 8.2. Cuestiones herencia y polimorfismo.
EP-F-014. Problema 9.1. Cuestión propagación excepciones.
EP-F-015. Problema 9.2. Cuestiones excepciones.
EP-F-016. Problema 10.1. Escritura/lectura de ficheros de texto.
EP-F-017. Problema 10.2. Ficheros binarios. Medidas contaminación.
MÉTODOS DE EVALUACIÓN "INTRODUCCIÓN AL SOFTWARE" |
||||
Descripción |
Tipología |
Evaluación final |
Recuperación |
% |
Teoría: participación en clase |
Otros |
No |
No |
10% |
|
||||
Problemas |
Actividad de evaluación con soporte virtual |
No |
Sí |
10% |
|
||||
Examen final |
Examen escrito |
Sí |
Sí |
50% |
|
||||
Prácticas |
Evaluación en laboratorio |
No |
Sí |
30% |
|
||||
TOTAL |
100% |
|||
OBSERVACIONES:
|
||||
OBSERVACIONES para alumnos/as a tiempo parcial:
|
MÉTODOS DE EVALUACIÓN "MÉTODOS DE PROGRAMACIÓN"
|
||||
Descripción |
Tipología |
Evaluación final |
Recuperación |
% |
Prácticas |
Evaluación en laboratorio |
No |
Sí |
5% |
|
||||
Exámenes prácticos |
Evaluación en laboratorio |
No |
Sí |
45% |
|
||||
Examen final |
Examen escrito |
Sí |
Sí |
50% |
|
||||
TOTAL |
100% |
|||
OBSERVACIONES:
|
||||
OBSERVACIONES para alumnos/as a tiempo parcial: |
![]() |
Michael González Harbour
Departamento de Ingeniería Informática y Electrónica UNIVERSIDAD DE CANTABRIA |
Contacto Información legal Sobre OCW RSS Universidad de Cantabria