Programación orientada a objetos

Track and organize your meetings within your company

Get Started. It's Free
or sign up with your email address
Programación orientada a objetos by Mind Map: Programación orientada a objetos

1. Programas a partir de varias fuentes

1.1. Estructura básica de un programa a partir de varios fuentes

1.1.1. Como programa de implementación de un programa a partir de varios fuentes distintos

1.2. Los problemas de las inclusiones múltiples

1.2.1. La implementación de la clase Titulo no es difícil; basta con detallar el cuerpo de sus funciones, por el contrario,el fichero de cabecera presenta dos complicaciones.

1.3. Compilar un proyecto formado por varios fuentes

1.3.1. Para compilar un programa se deberían indicar los nombres de todos los ficheros.

2. Diseño de clases

2.1. Descripción del problema

2.1.1. Uno de los métodos con los que se puede plantar dicha descomposición en clases, consiste en elaborar una descripción del problema en lenguaje natural.

2.2. Búsqueda de objetos y acciones

2.2.1. Consiste en emplear dos colores distintos para destacar los nombres y los verbos que aparecen.

2.3. Asignación de atributos y métodos a objetos

2.3.1. Habrá que deducir qué clases de objetos aparecen en el programa, como se relaciona entre ellos y qué acciones debe realizar cada uno.

2.4. Representación como diagramas de clases

2.4.1. Representación gráfica de clases

2.4.2. Representación de una agregación

2.4.3. Representación de una herencia

2.4.4. Diagrama de clases

3. Implementación de clases

3.1. Del diagrama a una estructura de clases

3.1.1. Cuando el diagrama de clases ha sido creado y revisado, resulta sencillo convertirlo en una serie de ficheros que representen dichas clases.

3.2. Refinando la implementación

3.2.1. La implementación de las clases que no están completas, se debería detectar detalles que pueden hacerse pasado por alto en el análisis inicial .

4. Etructuras dinámicas: las clases queue, stack, list, vector y map

4.1. Estructuras dinámicas frente a estructuras estáticas

4.1.1. Su tamaño debe establecerse desde el inicio

4.2. Una cola

4.2.1. Una de las estructuras dinámicas más sencillas es la cola (queue)

4.3. Una pila

4.3.1. estructuras en las que los datos se recuperan por la última posición

4.4. Una lista con acceso secuencial

4.4.1. Lista de tamaño indeterminado

4.5. Listas con acceso directo

4.5.1. Vector de tamaño indeterminado

4.6. Tablas Hash

4.6.1. Mapa

5. Clases

5.1. Apariencia de una clase

5.1.1. Las clases detallaran todas las características

5.2. Herencia

5.2.1. Para ello será necesario detallar solo las novedades de su comportamiento, puesto que el resto de detalles se tomarán de la clase que se está heredando

5.3. Ocultación de detalles

5.3.1. Sirve para ocultar aquellos detalles que se quieran modificar posteriormente

6. Tipos de datos simples

6.1. Rango de un número entero

6.1.1. Tamaño máximo de enteros: desbordamiento

6.2. Otros tamaños de números enteros

6.2.1. Tipos de números enteros y su capacidad

6.3. Enteros positivos y negativos

6.3.1. Todos los tipos de datos enteros se toman "con signo"

6.4. Carácter

6.4.1. Tipo de dato "char"

6.5. Verdadero o falso: booleanos

6.5.1. Útil para pensar variables con los valores de verdadero o falso

6.6. Contacto con las cadenas de texto

6.6.1. Su manejo es similar al de los números

7. Resgistros (struct)

7.1. Datos formados por varios campos

7.1.1. Un registro es una agrupación de datos, los cuales no son necesariamente del mismo tipo. Estos se definen con la orden struct.

7.2. Arrays de registros

7.2.1. Permite guardar varios datos de una persona yes posible guardar varios datos de personas si se combina el uso de los struct con el de los arrays.

8. Cadenas de texto: la clase string

8.1. Definición y lectura desde teclado

8.1.1. Lectura de cadenas de texto con espacios

8.2. Longitud de la cadena

8.2.1. Para averiguar la cantidad de letras que contiene una cadena de texto

8.3. Acceder letra a letra

8.3.1. Se puede acceder a una cierta posición de una cadena, de la misma forma que si se tratara de un array

8.4. Subcadenas

8.4.1. Tomar X letras de una cadena de C++ (subcadenas)

8.5. Unir (conectar) cadenas

8.5.1. Es posible con el símbolo de la suma

8.6. Comparar

8.6.1. Se puede utilizar " .compare"

8.7. Buscar

8.7.1. Se puede comprobar si una cadena contiene un cierto texto usando " .find"