Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
La Gua del Instructor del curso de Introduccin a la Programacin y Computacin 1, se realiz conforme al formato sugerido en el curso de Estructuracin de cursos y laboratorios, impartido por el seor Mruntunjaya Panda.
3.1.
Datos Generales
NOMBRE DE CURSO:
Introduccin
la
Programacin
Computacin 1 (770) PRE- REQUISITOS: 36 Crditos Matemtica Bsica 2 (103) POST REQUISITOS: Introduccin a la Programacin y
Computacin 2 (771) Lenguajes Formales y de Programacin (796) OBJETIVO: Al finalizar el curso, el estudiante poseer la habilidad necesaria para poder realizar el diseo
17
bsico
de
programas
que
le
programacin
Plasmando los algoritmos que constituyen el programa en el lenguaje JAVA. Apoyndose en UML para poder disear los diagramas de clases de estos programas. MODULOS: VIGENCIA: Programacin Principiantes Primer Semestre 2009
3.2.
El curso de Introduccin a la Programacin y Computacin 1 se divide en 28 sesiones, integradas en un mdulo denominado Programacin Principiantes. La tabla V. muestra la tabla correspondiente a la distribucin del curso de IPC1.
18
3.3.
El mdulo de programacin principiantes se divide en 7 sub mdulos. La tabla VI. muestra la tabla correspondiente a la distribucin del mdulo de IPC1.
ESTUDIANTE
El conocimiento los conceptos bsicos de computacin. La comprensin sobre qu se considera software. El entendimiento de las
consistencia de la programacin estructurada programacin. PROGRAMACIN ORIENTADA A OBJETOS 14 horas 2 horas 14 horas Los conocimientos necesarios y el entorno de
19
fundamentales de la programacin orientada a objetos. El entendimiento de las ventajas que brinda UML al momento de ser aplicado en proyectos de software. La comprensin del concepto de polimorfismo al ser aplicado en conceptos especficos de la
programacin orientada a objetos. La comprensin de las ventajas de la herencia y la importancia que poseen los destructores. El entendimiento del concepto de polimorfismo aplicado a mtodos virtuales. La habilidad de de aplicar el
construcciones
conocimiento del
sobre
la Java
PLATAFORMA JAVA
evolucin
lenguaje
comprendiendo las caractersticas que hacen nica a esta plataforma. ELEMENTOS BSICOS DE PROGRAMACIN PROGRAMACIN ESTRUCTURADA Y 8 horas 2 horas 10 horas La comprensin sobre los
programacin estructurada. La habilidad para utilizar los operadores expresiones. El conocimiento necesario para identificar la importancia sobre: las estructuras de control, tanto y generacin de
20
iterativas como condicionales. La habilidad para realizar rutinas y aplicar la recursividad o recursin. ESTRUCTURAS ALGORTMICAS 4 horas 0 horas 4 horas La comprensin sobre las
estructuras algortmicas. La habilidad para utilizar arreglos y comprender los beneficios de utilizar cadenas dinmicas. La aplicacin de los mtodos de ordenamiento de datos.
FLUJOS
(STREAMS)
Y DE
4 horas
2 horas
6 horas
MANIPULACIN ARCHIVOS
concepto de streams. TIPO DE DATOS 6 horas 4 horas 10 horas La comprensin del tipo de de la datos
ABSTRACTOS
importancia abstractos.
La habilidad para utilizar pilas, colas y listas enlazadas utilizando java. TOTAL 38 horas 18 horas 56 horas
3.4.
Evaluacin
Ponderacin de evaluaciones, tareas, prcticas y laboratorio. La tabla VII. muestra la tabla correspondiente a la evaluacin del curso de IPC1.
21
AUTO-EVALUACIN
1.00 %
2.00 %
LABORATORIO
40.0 %
40.00 %
EXAMEN PARCIAL
10.0 %
30.00 %
EXAMEN FINAL
25.0 %
25.00 %
TOTAL
100.00 %
3.5.
Detalle de Sesiones
La tabla VIII. muestra la tabla correspondiente al detalle de sesiones del curso de IPC1.
22
PRINCIPIANTES 2 3 PROGRAMACIN PRINCIPIANTES 3 4 PROGRAMACIN PRINCIPIANTES 4 5 PROGRAMACIN PRINCIPIANTES 5 6 PROGRAMACIN PRINCIPIANTES 6 7 PROGRAMACIN PRINCIPIANTES 7 8 PROGRAMACIN PRINCIPIANTES 8 9 PROGRAMACIN PRINCIPIANTES 9 10 PROGRAMACIN PRINCIPIANTES 10 11 PROGRAMACIN PRINCIPIANTES 11 13 PROGRAMACIN PRINCIPIANTES 13 14 PROGRAMACIN PRINCIPIANTES 14 15 PROGRAMACIN PRINCIPIANTES 15 16 PROGRAMACIN PRINCIPIANTES 16 17 PROGRAMACIN PRINCIPIANTES 17 18 PROGRAMACIN PRINCIPIANTES 18 Prctica Preparatoria No. 2 12 PROGRAMACIN PRINCIPIANTES 12 Prctica Preparatoria No. 1
23
19 PROGRAMACIN PRINCIPIANTES 19 20 PROGRAMACIN PRINCIPIANTES 20 21 PROGRAMACIN PRINCIPIANTES 21 22 PROGRAMACIN PRINCIPIANTES 22 24 PROGRAMACIN PRINCIPIANTES 24 25 PROGRAMACIN PRINCIPIANTES 25 26 PROGRAMACIN PRINCIPIANTES 26 27 PROGRAMACIN PRINCIPIANTES 27 28 PROGRAMACIN PRINCIPIANTES 28 Prctica Preparatoria No. 5 23 PROGRAMACIN PRINCIPIANTES 23 Prctica Preparatoria No. 4 Prctica Preparatoria No. 3
3.6.
Distribucin de Sesiones
La tabla IX. muestra la tabla correspondiente a la distribucin de sesiones del curso de IPC1.
SESIN NO. 1:
24
OBJETIVO:
1 Conceptos computacionales. CONTENIDO: 1.1 Computadora. 1.2 Hardware. 1.3 Software. 1.3.1 Programa. 1.3.2 Informacin: instrucciones y datos. 1.4 Firmware. 2 Organizacin de la computadora. 2.1 Diagrama de organizacin fsica. 2.2 Dispositivos E/S. 2.2.1 Dispositivos de entrada. 2.2.2 Dispositivos de salida. 2.2.3 Perifricos. 2.3 CPU. 2.3.1 Componentes primarios: ALU, CU, Registros. 2.3.2 Palabra (Word). 2.3.3 Microprocesadores y velocidad. 2.4 Memoria intermedia (cach). 2.5 Memoria principal. 2.5.1 Unidad elemental de memoria: Bits, Bytes. 2.5.2 Sistema binario 2.5.3 Tabla de unidades de medida de almacenamiento. 2.5.4 Tipos de memoria. 2.6 Memoria secundaria. 2.6.1 Archivos. 2.6.2 Tipos de dispositivos: magnticos, pticos, etc. 2.7 Comparacin entre memorias: almacenamiento, velocidad y precio.
SESIN NO. 2:
OBJETIVO:
25
programacin.
1 El software. CONTENIDO: 1.1 Programa. 1.2 Divisin del software. 1.2.1 Software del sistema. 1.2.1.1 Sistema operativo: definicin y caractersticas. 1.2.1.2 Compiladores e intrpretes. 1.2.1.3 Programas de utilidad. 1.2.2 Software de aplicacin. 1.2.3 Relacin entre software del sistema y software de aplicacin. 2 Lenguajes de programacin. 2.1 Lenguajes de mquina. 2.1.1 Caractersticas. 2.1.2 Conjuntos de instrucciones: CISC y RISC. 2.1.3 Desventajas. 2.2 Lenguajes de bajo nivel. 2.2.1 Caractersticas. 2.2.2 Lenguaje ensamblador: instrucciones nemotcnicas. 2.3 Lenguajes de alto nivel. 2.3.1 Caractersticas. 2.3.2 Ventajas. 2.3.3 Desventajas.
SESIN NO. 3:
OBJETIVO:
Brindar
los
estudiantes
la
capacidad
para
resolver
problemas
computacionales.
26
1.2 Caractersticas: preciso, definido, finito. 1.3 Diferencia entre mtodos algortmicos y heursticos. 2 Resolucin de problemas computacionales. 2.1 Anlisis del problema. 2.1.1 Concepto e importancia. 2.1.2 Definicin de alcances e identificacin de limitantes. 2.2 Diseo del algoritmo. 2.2.1 Concepto e importancia. 2.2.2 Introduccin al diseo descendente (top-down) o modular. 2.2.2.1 Programacin modular. 2.2.2.2 Mdulo: mdulo principal, submdulos. 2.2.2.3 Caractersticas y beneficios. 2.2.3 Herramientas de diseo. 2.2.3.1 Diagramas de flujo. 2.2.3.2 Pseudocdigo. 2.2.3.3 Ejemplo de diseo. 2.3 Codificacin. 2.3.1 Caractersticas bsicas y mejores prcticas. 2.4 Compilacin y ejecucin. 2.4.1 Fases de la compilacin. 2.4.2 Programa fuente, objeto y ejecutable. 2.5 Verificacin y depuracin. 2.5.1 Verificacin. 2.5.2 Depuracin. 2.5.3 Tipos de errores: de compilacin, de ejecucin y lgicos. 2.6 Documentacin. 2.6.1 Documentacin interna. 2.6.2 Documentacin externa. 2.7 Mantenimiento. 2.7.1 Importancia como factor de xito. 2.7.2 Versionamiento: <mayor>.<menor>.<control>.<build>.
SESIN NO. 4:
OBJETIVO:
27
entorno de programacin.
1 Programacin estructurada. CONTENIDO: 1.1 Definicin, reglas y beneficios. 1.2 Recursos abstractos. 1.3 Diseo descendente 1.3.1. Definicin 1.3.2. Perspectivas 1.3.3. Refinamiento Sucesivo 1.4 Estructuras de control 1.4.1. Definicin 1.4.2. Secuencia 1.4.3. Seleccin 1.4.4. Repeticin 1.5 Teorema de la programacin estructurada 1.5.1. Estructuras bsicas. 1.5.2. Reglas 2 Entorno de programacin. 2.1 Definicin y componentes. 2.2 Entorno integrado de desarrollo.
SESIN NO. 5:
OBJETIVO:
1 Metodologas de programacin. CONTENIDO: 1.1 Definicin. 1.2 Programacin procedural (top-down). 1.3 Programacin orientada a objetos. 1.4 Programacin orientada a eventos. 1.5 Programacin orientada a servicios.
28
SESIN NO. 6:
OBJETIVO:
1 Conceptos bsicos: definiciones y caractersticas. CONTENIDO: 1.1 Clase: tipo de objeto. 1.2 Objeto: instancia, propiedades y operaciones. 1.3 Mensaje. 1.4 Mtodo: enlace o ligadura tardo (dinmico) y temprano (esttico). 2 Principio de encapsulamiento y ocultacin de informacin: principios de Parnas. 3 Los miembros de una clase. 3.1 Atributos (propiedades). 3.2 Mtodos (definicin del comportamiento: operaciones). 4 Modificadores bsicos de visibilidad. 4.1 Pblico. 4.2 Privado. 4.3 Razones de encapsular 5 Relaciones. 5.1 A nivel de clases: herencia. 5.2 A nivel de objetos: agregacin/composicin y asociacin.
SESIN NO. 7:
OBJETIVO:
Presentar las ventajas que permite el lenguaje unificado de modelado al momento de aplicarlo en los proyectos de software.
29
1 Introduccin a UML: Lenguaje unificado de modelacin. CONTENIDO: 1.1 Modelacin visual: definicin e importancia. 1.2 UML: definicin, evolucin y clasificacin de diagramas. 1.3 Diagrama esttico de clases: principios bsicos. 1.3.1 Definicin y caractersticas. 1.3.2 Artefactos grficos principales: clases y sus componentes. 1.3.3 Atributos: modificadores de visibilidad, valores y restricciones. 1.3.4 Relacin de herencia. 1.3.5 Relacin de agregacin/composicin y asociacin. 1.3.6 Multiplicidad y direccin de las relaciones a nivel de objetos. 1.3.7 Roles y nombramiento de asociaciones. 1.3.8 Relaciones mltiples: clases asociativas y relaciones reflexivas. 1.3.9 Dependencia.
SESIN NO. 8:
OBJETIVO:
1 Polimorfismo. CONTENIDO: 1.1 Definicin y caractersticas. 1.2 Polimorfismo ad hoc: sobrecarga de mtodos. 1.3 Polimorfismo puro. 2 Conceptos avanzados. 2.1 Prototipo de la definicin de mtodos: firma/signatura y sobrecarga. 2.2 Visibilidad y modificadores de acceso: acceso semiprivado (protegido). 2.3 Miembros de instancia: variables de ejemplares. 2.4 Miembros estticos (static): datos y mtodos a nivel de clase. 2.5 Definicin de clase 2.6 Creacin de instancia con new. 2.7 Contexto de ejecucin: clase esttica y clase dinmica. 2.8 Constructores: reglas, sobrecarga, inicializadores en herencia.
30
SESIN NO. 9:
OBJETIVO:
1 Conceptos Avanzados CONTENIDO: 1.1 Destructor. 1.1.1 Modos de programacin: real y protegido. 1.1.2 Recolector de basura (GC): administracin de memoria. 1.1.3 Modelo de control de objetos: Stack, Memory-Heap. 1.1.4 Destruccin de objetos y ejecucin del destructor. 1.1.5 Mtodo finalize(). 1.2 Referencia this. 1.3 Clases parametrizadas: plantilla de clases o generics. 2 Herencia. 2.1 Concepto como expansin y contraccin. 2.2 Beneficios y costos. 2.3 Heursticas de diseo: combinacin (herencia mltiple).
OBJETIVO:
1 Polimorfismo y mtodos virtuales (virtualizacin). CONTENIDO: 1.1 Sobrecarga de mtodos: coercin y signatura de argumentos. 1.2 Sobrecarga de operadores. 1.3 Anulacin: refinamiento y reemplazo. 1.4 final <mtodo> (evitar sobrecarga).
31
OBJETIVO:
1 Construcciones abstractas. CONTENIDO: 1.1 Clase abstracta o diferida. 1.2 Mtodos abstractos. 1.3 abstract, enlace tardo (dinmico) y polimorfismo. 1.4 Interface. 1.4.1 Diferencia entre herencia e implementacin de interface. 1.4.2 Herencia (simple), interfaces (mltiples). 1.4.3 Jerarqua de interfaces. 1.4.4 Variables de interfaces. 1.5 Clases concretas, clases abstractas e interfaces. 2 Conceptos adicionales. 2.1 Relacin entre clase y tipo de dato. 2.1.1 Tipos primitivos o fundamentales. 2.1.2 Tipos derivados. 2.1.3 Tipos elaborados de usuarios. 2.2 Enfoque de diseo modular: alta cohesin y poco acoplamiento. 2.3 Dominio.
OBJETIVO:
32
OBJETIVO:
Explicar
al
estudiante
la
evolucin
del
lenguaje
java,
presentndole
1 Evolucin del lenguaje Java. CONTENIDO: 1.1 Lenguaje B. 1.2 Lenguaje C: UNIX, K&R, ANSI C, ventajas. 1.3 Lenguaje C++ (C con clases): caractersticas, ANSI/ISO C++. 1.4 Lenguaje Java: proyectos Green, Oak (Sun Microsystems) y la WWW. 2 Definicin y caractersticas. 2.1 Arquitectura neutra: Java Virtual Machine (JVM). 2.2 Proceso de ejecucin: bytecode, intrprete, Just-In-Time. 2.3 Portabilidad, estandarizacin, robustez, multihilo, seguro, POO. 3 Plataforma Java. 3.1 Tipos de programas: aplicaciones y applets. 3.2 JDK y versiones de la plataforma: J2EE, J2SE, J2ME. 3.3 JCP. 4 Aspectos de compilacin y ejecucin de programas Java. 5 Estructura general de un programa de aplicacin en Java.
SUB-MODULO:
ELEMENTOS
BSICOS
DE
PROGRAMACIN
PROGRAMACIN ESTRUCTURADA
OBJETIVO:
Aprender sobre los diferentes tipos de datos, constantes y variables utilizados en la programacin estructurada.
33
1 Tipos de datos. CONTENIDO: 1.1 Primitivos. 1.1.1 Enteros (int, byte, short, long): conversiones, base-x (10|16|8). 1.1.2 Nmeros de coma flotante (float, double). 1.1.3 Caracteres (char): codificacin (ASCII, Unicode), tratamiento. 1.1.4 Lgicos (boolean). 1.2 Referenciados. 1.3 void. 2 Constantes: literales y declaradas (final). 3 Variables. 3.1 Concepto y manipulacin. 3.2 Declaracin y definicin (asignacin). 3.3 Inicializacin. 3.4 Notacin estndar: estilo y legibilidad. 4 Entorno, mbito o alcance de variables. 4.1 Variables locales (mbito de mtodo): automticas. 4.2 Variables de mdulo: mbito de la clase. 5 Entradas y salidas de datos
SUB-MODULO:
ELEMENTOS
BSICOS
DE
PROGRAMACIN
PROGRAMACIN ESTRUCTURADA
OBJETIVO:
Instruir a los estudiantes sobre el uso de los operadores y la generacin de expresiones y presentar la importancia de las estructuras de control.
1 Expresiones y Operadores. CONTENIDO: 1.1 Expresin. 1.2 Operadores y clasificacin por operandos: unarios, binarios, ternarios. 1.3 Operador de asignacin. 1.4 Operadores aritmticos: precedencia, asociatividad, evaluacin y uso de
34
parntesis. 1.5 Operadores de incrementacin y decrementacin: notacin prefija y postfija. 1.6 Operadores relacionales: precedencia y evaluacin. 1.7 Operadores lgicos o booleanos. 1.7.1 Tablas de verdad: negacin, O-exclusivo, Y-lgico, O-lgico. 1.7.2 Evaluacin en cortocircuito. 1.8 Operadores de manipulacin de bits: lgicos, complemento,
desplazamientos. 1.9 Otros operadores: condicional (?:), coma (,), punto (.), (), [], new, instanceof. 2 Conversiones de tipos: implcitas y explcitas. 3 Estructuras de control. 3.1 Concepto e importancia. 3.2 Tipos: secuencia, seleccin (condicin), repeticin. 3.3 Sentencia compuesta.
SUB-MODULO:
ELEMENTOS
BSICOS
DE
PROGRAMACIN
PROGRAMACIN ESTRUCTURADA
OBJETIVO:
1 Estructuras de control condicionales. CONTENIDO: 1.1 Si Sino (if else): partes, diagrama de flujo, sentencias anidadas. 1.2 En caso (switch / case): partes, evaluacin. 1.3 Consideraciones adicionales: expresin condicional, evaluacin en cortocircuito, estilo y diseo, errores. 2 Estructuras de control repetitivas o iterativas (bucles, loops). 2.1 Conceptos bsicos. 2.1.1 Bucle, cuerpo, iteracin, consideraciones de diseo. 2.1.2 Variable de control, etapas (inicializacin, prueba, actualizacin). 2.2 Mientras (while): partes, diagrama de flujo. 2.3 Para (for): partes, diagrama de flujo, sentencias nulas y bucles vacos.
35
2.4 Repetir Hasta / Hacer - Mientras (Repeat Until / do-while): partes, diagrama de flujo, diferencias con ciclo Mientras. 2.5 Comparacin entre los diferentes bucles: formatos y recomendaciones. 2.6 Anidacin de bucles: externos e internos. 2.7 Diseo eficiente de bucles: patrones estructurales. 2.7.1 Cero iteraciones y bucles infinitos. 2.7.2 Manejo de incrementos y decrementos. 2.7.3 Terminaciones anormales de un ciclo. 2.7.4 Modelos: control por centinelas y por indicadores (banderas). 2.7.5 Precauciones con el manejo de las variables de control. 2.7.6 Bucles para diseo de sumas y productos. 2.7.7 Fin de un bucle: por tamao, por pregunta, valor centinela, etc.
SUB-MODULO:
ELEMENTOS
BSICOS
DE
PROGRAMACIN
PROGRAMACIN ESTRUCTURADA
OBJETIVO:
1 Las rutinas (mtodos). CONTENIDO: 1.1 Concepto, bloques de construccin y partes (cabecera y cuerpo). 1.2 Procedimiento y funcin. 1.3 Mtodo main(), lnea de comandos. 1.4 El valor de retorno: devolucin de valores (sentencia return). 1.5 Llamadas (invocaciones) a mtodos. 1.6 [Corolario] Modificadores de visibilidad (acceso). 1.7 [Corolario] Entorno de las variables (mbito o alcance). 1.7.1 mbito de la clase. 1.7.2 mbito de mtodo y de bloque: variables locales. 1.8 Los parmetros. 1.8.1 Paso de argumentos por valor (paso por copia). 1.8.2 Paso de argumentos por referencia (paso por variable). 1.8.3 Lista de parmetros mltiples. 1.8.4 Parmetro final. 2 Recursividad o recursin.
36
2.1 Concepto, naturaleza/comportamiento e importancia. 2.2 Recursividad directa. 2.3 Recursividad indirecta: mtodos mutuamente recursivos. 2.4 Recursin vrs. Iteracin: ventajas y desventajas, directrices de diseo. 2.5 Diseo: condicin de terminacin, recursin infinita. 2.6 Ejemplos y aplicacin en modelo matemticos.
SUB-MODULO:
ELEMENTOS
BSICOS
DE
PROGRAMACIN
PROGRAMACIN ESTRUCTURADA
OBJETIVO:
Evaluar los contenidos de las sesiones 13- 17 aprendidos por los estudiantes.
OBJETIVO:
Lograr que el estudiante entienda en qu consisten los arreglos y los beneficios de utilizar cadenas dinmicas.
1 Arreglos de datos. CONTENIDO: 1.1 Conceptos: elementos, longitud, indexacin, representacin en memoria. 1.2 Declaracin, subndices, atributo length, inicializacin, copia de arreglos. 1.3 Arreglos bidimensionales (matrices). 1.3.1 Declaracin, inicializacin. 1.3.2 Representacin en memoria. 1.3.3 Acceso a elementos: uso de bucles. 1.4 Arreglos n-dimensionales (multidimensionales): aplicacin prctica. 1.5 Manejo de arreglos como parmetros.
37
2 Cadenas de caracteres. 2.1 Concepto: manejo en memoria, diferencia con arreglos de caracteres. 2.2 Cadenas estticas (clase String). 2.2.1 Declaracin, inicializacin/constructores, asignacin, ejemplos. 2.2.2 Manejo como parmetros y arreglo de cadenas. 2.2.3 Principales operaciones y mtodos: longitud, concatenacin,
obtencin de caracteres, comparacin de cadenas, conversin de cadenas, bsqueda de caracteres y subcadenas. 2.3 Cadenas dinmicas (clase StringBuffer): mtodos propios para aadir, insertar, eliminar y reemplazar. 2.4 Cadenas especializadas: clase StringTokenizer.
OBJETIVO:
Aprender sobre los mtodos de ordenamientos de datos y cuando es mejor utilizar cada uno de ellos.
1 Ordenamiento de datos en arreglos. CONTENIDO: 1.1 Concepto: algoritmos y anlisis de rendimiento (notacin-O). 1.2 Por intercambio (swap). 1.3 Por seleccin. 1.4 Por insercin. 1.5 Burbuja (bubblesort). 1.6 QuickSort. 2 Bsqueda de datos en arreglos. 2.1 Secuencial: concepto, algoritmo, anlisis de rendimiento. 2.2 Binaria: concepto, algoritmo, anlisis de rendimiento.
38
OBJETIVO:
1 Concepto de flujo: modelo productor-consumidor, canal de conexin CONTENIDO: (pipe). 2 Tipos de flujos. 2.1 Jerarqua de clases: Java y C#. 2.2 Definicin y operaciones p/archivos. 2.3 Clases Filtro: definicin, jerarqua, operaciones. 3 Concepto de archivo. 3.1 Persistencia de datos. 3.2 Caractersticas estructurales: formato. 3.3 Representacin, manipulacin. 3.4 Clase Archivo.
OBJETIVO:
1 Tipos de archivos: texto y binarios. CONTENIDO: 2 Estructura de archivos. 2.1 Registros (coleccin lgica de datos): concepto y definicin por campos. 2.2 Manipulacin de registros. 2.3 Tamao de registros y clculo para acceso lgico por bloques/campos. 3 Operaciones bsicas con archivos. 3.1 Abrir y cerrar. 3.2 Lectura, escritura y posicionamiento. 3.3 Localizacin del final del archivo. 4 Clasificacin fundamental de archivos segn su organizacin. 4.1 Organizacin secuencial: concepto, manipulacin (lectura, escritura). 4.2 Organizacin directa o aleatoria (acceso aleatorio). 4.2.1 Concepto, manipulacin.
39
4.2.2 Clase Archivo Acceso Aleatorio: creacin de objeto, mtodos de posicionamiento, proceso general para agregar y consultar registros.
OBJETIVO:
Evaluar los contenidos de las sesiones 19- 22 aprendidos por los estudiantes.
OBJETIVO:
1 Fundamentos tericos. CONTENIDO: 1.1 Memoria dinmica y apuntadores: concepto de null. 1.2 Introduccin a la clasificacin de estructuras: unidimensionales (pilas, colas y listas), bidimensionales (rboles: binario, AVL), n-dimensionales (rboles balanceados B), matrices esparcidas (listas ortogonales), tablas de Hash. 2 Pilas (Stack). 2.1 Concepto: poltica de acceso a datos (LIFO), estructura e importancia. 2.2 Especificacin de operaciones. 2.2.1 push, pop, top, reset. 2.2.2 Pila vaca (desbordamiento negativo, underflow). 2.2.3 Pila llena (desbordamiento positivo, overflow). 2.2.4 Tamao de la pila. 2.3 Implementacin esttica utilizando arreglos: definicin de la clase pila.
40
OBJETIVO:
1 Colas (Queues). CONTENIDO: 1.1 Introduccin a teora de colas. 1.2 Concepto: poltica de acceso a datos (FIFO), estructura e importancia. 1.3 Especificacin de operaciones. 1.3.1 push, pop, top, reset. 1.3.2 Cola vaca, cola llena, tamao de la cola. 1.4 Implementacin esttica utilizando arreglos. 1.4.1 Modelos de manipulacin: simple y circular. 1.4.2 Definicin de la clase cola. 1.5 Implementacin dinmica: clase Cola. 1.6 Aplicacin: cola de prioridades (modelo y definicin). 2 Listas enlazadas. 2.1 Nodo: concepto y estructura interna. 2.2 Definicin y representacin en memoria. 2.3 Clasificacin: 2.3.1 Simplemente enlazadas. 2.3.2 Doblemente enlazadas. 2.3.3 Circular simplemente enlazada. 2.3.4 Circular doblemente enlazada.
OBJETIVO:
41
1. Listas Enlazadas CONTENIDO: 1.1 Estructura y operaciones: 1.1.1 Definicin de nodo. 1.1.2 Propiedades o atributos: referencias de cabecera y cola. 1.1.3 Creacin e inicializacin. 1.1.4 Insercin: en la cabeza, en el final, antes de y despus de. 1.1.5 Bsqueda. 1.1.6 Eliminacin. 1.1.7 Recorrido y comprobacin de vaco. 2 Listas doblemente enlazadas: concepto, representacin, nodo binario, caractersticas, implementacin de operaciones. 3 Listas circulares: concepto, representacin, implementacin de
OBJETIVO:
Permitir a los estudiantes la resolucin de dudas que hayan generado en el transcurso de las sesiones.
OBJETIVO:
42
3.7.
La tabla X. muestra la tabla correspondiente al detalle de conduccin de tutoriales del curso de IPC1.
N.A.
N.A.
Criterio de evaluacin:
N.A.
Viva:
N.A.
Documentacin:
N.A.
43
3.8.
La tabla XI. muestra la tabla correspondiente al detalle de conduccin de exmenes del curso de IPC1.
EXAMEN NMERO: Examen a ser realizado despus de la sesin nmero: Temas para el examen:
2 17
Sesin 13 Sesin 17
3 22
44
Sesin 18 Sesin 22
EXAMEN NMERO: Examen a ser realizado despus de la sesin nmero: Temas para el examen:
4 27
3.9.
45
46
3.10.
Bibliografa Recomendada
La tabla XII. muestra la tabla correspondiente a la bibliografa recomendada para el curso de IPC1.
47
programacin orientada a objetos). Espaa, McGraw-Hill / Interamericana de Espaa, S. A. 2002, PP 725 2 Budd, Timothy. Introduccin a la programacin orientada a objetos, EUA, Addison-Wesley,
Iberoamericana, S. A. 1994, PP. 409 4 Joyanes, L. Programacin en Tubo Pascal Versiones 5.5, 6.0, y 7.0, (2da Edicin), Mxico,
McGraw-Hill / Interamericana de Espaa, S. A. 1995, PP. 914 5 Manuales de Referencia de Java, <http://www.sun.com/java>.
El Hand Book de IPC1 contiene los ejercicios y prcticas que son citadas en el IG. El Hand Book se desplegar en forma de imgenes. ste contiene 2 secciones: Ejercicios y Prcticas Preparatorias.
48
49
50