Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2019
TABLA DE CONTENIDO
Anexos
1
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
Capítulo 1
Introducción
1.1. Generalidades
Saber Conocer:
- El método del proyecto de ingeniería,
- El paradigma de la programación orientada a objetos,
- Los fundamentos del Lenguaje C++,
- Las técnicas básicas de redacción de informes técnicos y su presentación escrita y oral,
- Las técnicas básicas de trabajo en equipo, y
- El código de ética profesional del ingeniero.
2
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
Saber Hacer:
- Proyectar y realizar programas de cómputo
- Utilizar el método del proyecto de ingeniería,
- Utilizar la programación orientada a objetos
- Utilizar el lenguaje C++
- Formular informes técnicos y hacer las presentaciones escritas y orales correspondientes.
Saber Ser:
- Desempeñarse conforme al código de ética profesional del ingeniero del IPN.
El profesor, entonces, desde las primeras clases organizará las actividades del grupo escolar de la manera
siguiente:
- Usualmente se tienen grupos escolares de 30 alumnos. El grupo escolar se dividirá en equipos de 5 alumnos
por equipo, es decir, habrá 6 equipos por grupo escolar. El Profesor designará un coordinador del equipo, el cual
asumirá dicho rol durante un proyecto, es decir, al cambiar el proyecto asignado al equipo, cambiará el
coordinador. Los restantes miembros del equipo tendrán el rol de proyectistas (o analistas-programadores).
- A cada equipo se le asignará el proyecto y la realización de un sistema de información (programa), el cual podrá
ser el mismo para todos los equipos. Cada equipo proyectará y realizará su propio sistema de información.
- Durante la primera sesión del equipo se hará una “tormenta de ideas” para proyectar el sistema de
información (conforme al método del proyecto de ingeniería, descrito en la sección siguiente), al final de la cual
se tendrán especificados los Requerimientos del sistema en lo general. Posteriormente a cada miembro del
equipo se le asignará el sub-proyecto de una parte del sistema o subsistema. Al final se reunirá el equipo para
integrar la solución completa y final del prototipo del sistema.
1.1.3. Evaluación
La evaluación de todos y cada uno de los alumnos del grupo escolar, se hará:
- Por la entrega del escrito (examen escrito), del todo y la parte del sistema de información que se le asigne de
tarea (30%);
- Por la demostración práctica del funcionamiento eficaz del programa correspondiente, en el laboratorio (20%);
- Por la presentación verbal (examen oral), del todo y la parte del sistema de información que se le haya
asignado de tarea (40%);
- Por su participación y contribución individual, con puntualidad y asiduidad a clases y al trabajo en equipo con
ética profesional (10%).
3
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
La ingeniería es la acción y el efecto de proyectar y realizar sistemas complejos, que funcionen eficaz y
eficientemente, con el propósito de satisfacer determinadas necesidades humanas. La ingeniería es
acción, porque es una actividad orientada a la formulación de proyectos, así como a la realización de
estos. Además, la ingeniería es efecto; es decir, es la realización del proyecto en forma de un sistema
complejo que satisface determinadas necesidades humanas. Los ingenieros, por lo tanto, tratan de
crear un mundo nuevo (innovan), un mundo no pre-existente, crean un mundo artificial (producido por
el ser humano y no por la naturaleza), un mundo nuevo conforme a las necesidades humanas. Así, los
edificios, los puentes, las computadoras y la red Internet, entre muchos otros sistemas tecnológicos,
son creaciones de la ingeniería.
El proyecto constituye el propósito fundamental de la ingeniería.1 El método del proyecto de ingeniería media
entre el problema y la solución, como se muestra esquemáticamente en la Figura 1-1. Cuando nos referimos al
proyecto, hacemos referencia tanto a su especificación mediante modelos textuales, gráficos, matemáticos o
físicos, así como a su realización o materialización.
1
Asimow, Morris, Introducción al proyecto, Herrero Hnos. Sucs., México, 1973, p.5.
4
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
El método del proyecto de ingeniería recorre cinco fases, mismas que constituyen el ciclo de vida del proyecto:
1) Anteproyecto, 2) Proyecto, 3) Construcción, 4) Operación, y 5) Retiro. Este método es iterativo e incremental,
como se muestra en la Figura 1-2; es decir, avanza de una fase a otra, iterando a una fase anterior si es
necesario, para precisar o corregir algún aspecto del desarrollo del proyecto, incrementando su mejoramiento
en cada iteración.
La Ingeniería del Software trata de los métodos específicos para proyectar programas de cómputo, dependiendo
de los paradigmas y lenguajes de programación que se utilicen; así, por ejemplo, para la Programación
Estructurada se usan la técnica descendente (top-down), la modularización y el teorema de estructura.
Asimismo, en la Programación Orientada a Objetos, se usa generalmente el método del Proceso Unificado (UP,
por sus siglas en inglés) y el Lenguaje de Modelado Unificado (UML). Sin embargo, el método general que se
usará en este libro para crear programas de cómputo o, mejor dicho, sistemas de información basados en
computadoras, será el Método del Proyecto de Ingeniería (MPI) y, dentro de éste, se utilizan las técnicas o
paradigmas particulares antes referidos.
1.2.2. Anteproyecto
La fase de anteproyecto consta de las etapas siguientes:
- Especificar completamente los requerimientos del sistema: dominio del sistema a proyectar (problema), casos
de uso, entradas y salidas, parámetros, restricciones, criterios.
5
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
1.2.3. Proyecto
La fase de proyecto consta de las etapas siguientes:
1.2.4. Construcción
La fase de construcción consta de las etapas siguientes:
1.2.5. Operación
La fase de operación consta de las etapas siguientes:
1.2.6. Retiro
La fase de retiro consta de las etapas siguientes:
6
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
- Retirar el sistema.
- Documentar el Retiro.
El método del proyecto de ingeniería se aplica a cualquier problema de ingeniería, incluyendo tanto el proyecto
del producto a producir, como el proyecto de la planta productiva. En lo que sigue, todos los ejemplos de
proyecto y realización de sistemas de información (programas de cómputo), corresponderán solamente a la fase
de anteproyecto del método del proyecto de ingeniería. Asimismo, sólo se desarrollará el anteproyecto del
producto a producir, es decir, sólo se desarrollará el anteproyecto del programa de cómputo correspondiente;
es decir, no se tratará el proyecto de la planta productiva correspondiente. Lo anterior es el caso de un
programa de cómputo desarrollado para uso interno de una organización, y no para su producción y distribución
masiva en un mercado determinado, lo cual sale del alcance del presente libro.
Crear una carpeta denominada POO. Dentro de la carpeta POO, crear las sub-carpetas siguientes:
Bibliotheka-0, Bibliotheka-1, Control-Escolar, MathCalc-0 y Archivos. Dentro de cada una de las carpetas
anteriores, crear las sub-carpetas Reportes y Aplicación. Más adelante se irán utilizando dichas carpetas
para guardar archivos. La estructura de las carpetas y los archivos queda como se muestra
esquemáticamente en la Figura 1-3.
7
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
POO
Reportes Aplicación
Ética es la filosofía y la ciencia que trata de la moral individual o colectiva, en una sociedad históricamente dada.
Tiempo y espacio.
La ética (usada aquí como moral) profesional del ingeniero, es el conjunto de creencias, costumbres, valores y
normas que guían el ejercicio profesional de un ingeniero. Valores y normas:
1.6. Bibliografía
1. Deitel, Paul J., Deitel, Harvery M., C++ Cómo programar, México, Pearson Educación, 2014, 9ª Ed.
2. Liberty, Jesse, Jones Bradley, SAMS Teach yourself C++ in 21 days, 5a ed., Indianápolis, SAMS Publishing,
2005.
3. Stroustrup, Bjarne; El Lenguaje de Programación C++; España, Addison Wesley, Edición Especial, 2002.
4. Ceballos Sierra, Francisco Javier; Enciclopedia del Lenguaje C++; México, Alfaomega, 2004.
5. Horton, Ivor. Ivor Horton’s Beginning Visual C++ 2005. Indianapolis, Wiley, 2006.
8
Heberto Reynel Iglesias / Programación Orientada a Objetos con C++
6. Arlow, Jim; Neustadt, Ila. UML and the Unified Process: Practical Object-Oriented Analogic and Design;
USA Addison-Wesley, 2002.
7. Pilone, Dan; UML 2.0 in a nutshell: A desktop quick reference; O’Reilly, 2005
8. Stevens, Perdita; Pooley, Rob; Utilización de UML en ingeniería del software con objetos y componentes;
Addison Wesley, 2002.