PDF de programación - Capítulo 1 - Desarrollo de software. Tipos abstractos de datos

Imágen de pdf Capítulo 1 - Desarrollo de software. Tipos abstractos de datos

Capítulo 1 - Desarrollo de software. Tipos abstractos de datosgráfica de visualizaciones

Publicado el 12 de Noviembre del 2019
369 visualizaciones desde el 12 de Noviembre del 2019
1,3 MB
44 paginas
Creado hace 12a (16/04/2007)
1

Estructura de datos en C++

CAPÍTULO 1
Desarrollo de software.
Tipos abstractos de datos

Objetivos

Con el estudio de este capítulo usted podra:
• Conocer el concepto de software algoritmo y sistema operativo.
• Especificar algoritmos en pseudocódigo.
• Definir los tipos de abstractos de datos.
• Conocer el concepto de objeto.

Contenido

1.1. El software (los programas)
1.2. Resolución de problemas y desarro-

llo de software

1.3. Calidad de software
1.4. Algoritmos

1.5. Abstración en lenguajes de progra-

mación

1.6. Tipos abstractos de datos
1.7. Programación estructurada
1.8. Programación orientada a objetos

Conceptos clave

• Abstracción.
• Algoritmo.
• Clase.
• Depuración.
• Documentación.
• Estructura de datos.
• Herencia.
• Mantenimiento.

• Objetos.
• Polimorfismo.
• Programación estructurada.
• Programación orientada a objetos.
• Sistema operativo.
• Software.
• TAD.
• Tipo de dato.

1

2

Estructura de datos en C++

INTRODUCCIÓN

La principal razón para que las personas aprendan lenguajes y técnicas de programación es utilizar
la computadora como una herramienta para resolver problemas. Este capítulo introduce al lector
en la metodología a seguir para la resolución de problemas con computadoras y en el diseño de
algoritmos examinanando el concepto de Abstracción de Datos. La Abstracción de Datos es la
técnica de inventar nuevos tipos de datos que sean más adecuados a una aplicación y, por consi-
guiente, facilitar la escritura del programa. La técnica de abstracción de datos es una técnica
potente de propósito general que cuando se utiliza adecuadamente, puede producir programas
más cortos, más legibles y flexibles.

Los lenguajes de programación soportan en sus compiladores tipos de datos fundamentales
o básicos (predefinidos), tales como int, char y float en C, C++ y Java. Lenguajes de progra-
mación, como C++, tienen características que permiten ampliar el lenguaje añadiendo sus propios
tipos de datos.

Un tipo de dato definido por el programador se denomina tipo abstracto de dato, TAD (Abs-
tract Data Type, ADT). El término abstracto se refiere al medio en que un programador abstrae
algunos conceptos de programación creando un nuevo tipo de dato.

La modularización de un programa utiliza la noción de tipo abstracto de dato (TAD) siempre
que sea posible. Si el lenguaje de programación soporta los tipos que desea el usuario y el con-
junto de operaciones sobre cada tipo, se obtiene un nuevo tipo de dato denominado TAD.

Los paradigmas más populares soportados por el lenguaje C++ son: programación estructu-

rada y programación orientada a objetos.

1.1. EL SOFTWARE (LOS PROGRAMAS)

El software de una computadora es un conjunto de instrucciones de programa detalladas que
controlan y coordinan los componentes hardware de una computadora y controlan las opera-
ciones de un sistema informático. El auge de las computadoras en el siglo pasado y en el actual
siglo XXI, se debe esencialmente al desarrollo de sucesivas generaciones de software potentes
y cada vez más amistosas («fáciles de utilizar»)

Las operaciones que debe realizar el hardware son especificadas por una lista de instruc-
ciones, llamadas programas, o software. Un programa de software es un conjunto de sentencias
o instrucciones dadas al computador. El proceso de escritura o codificación de un programa
se denomina programación y las personas que se especializan es esta actividad se denominan
programadores. Existen dos tipos importantes de software: software del sistema y software de
aplicaciones. Cada tipo realiza una función diferente.

Software del sistema es un conjunto generalizado de programas que gestiona los recursos
del computador, tal como el procesador central, enlaces de comunicaciones y dispositivos pe-
riféricos. Los programadores que escriben software del sistema se llaman programadores de
sistemas. Software de aplicaciones el conjunto de programas escritos por empresas o usuarios
individuales o en equipo y que instruyen a la computadora para que ejecute una tarea especí-
fica. Los programadores que escriben software de aplicaciones se llaman programadores de
aplicaciones.

Los dos tipos de software están relacionados entre sí, de modo que los usuarios y los progra-
madores pueden hacer así un uso eficiente del computador. En la Figura 1.1 se muestra una
vista organizacional de un computador donde se muestran los diferentes tipos de software a modo
de capas de la computadora desde su interior (el hardware) hacia su exterior (usuario): las dife-

Desarrollo de software. Tipos abstractos de datos

3

Programas de la aplicación

Programas del sistema

Figura 1.1. Relación entre programas de aplicación y programas del sistema.

rentes capas funcionan gracias a las instrucciones específicas (instrucciones máquina) que forman
parte del software del sistema y llegan al software de aplicación, programado por los programa-
dores de aplicaciones, que es utilizado por el usuario y que no requiere ser un especialista.

1.1.1. Software del sistema

El software del sistema coordina las diferentes partes de un sistema de computadora y conecta
e interactúa entre el software de aplicación y el hardware del computador. El software del sis-
tema gestiona el hardware del computador. Otro tipo de software del sistema que gestiona,
controla las actividades de la computadora y realizan tareas de proceso comunes, se denomina
utility o utilidades (en algunas partes de Latinoamérica, utilerías). El software del sistema que
gestiona y controla las actividades del computador se denomina sistema operativo. Otro soft-
ware del sistema son los programas traductores o de traducción de lenguajes de computador
que convierten los programas escritos en lenguajes de programación, entendibles por los pro-
gramadores, en lenguaje máquina que entienden las computadoras

El software del sistema es el conjunto de programas indispensables para que la máquina
funcione; se denominan también programas del sistema. Estos programas son, básicamente, el
sistema operativo, los editores de texto, los compiladores/intérpretes (lenguajes de programa-
ción) y los programas de utilidad.

1.1.2. Software de aplicación

El software de aplicación tiene como función principal asistir y ayudar a un usuario de un
computador para ejecutar tareas específicas. Los programas de aplicación se pueden desarrollar
con diferentes lenguajes y herramientas de software. Por ejemplo: una aplicación de procesa-

4

Estructura de datos en C++

miento de textos (word processing) tal como Word de Microsoft o Writely de Google que ayu-
da a crear documentos, una hoja de cálculo tales como Lotus 1-2-3 o Excel que ayudan a au-
tomatizar tareas tediosas o repetitivas de cálculos matemáticos o estadísticos, a generar
diagramas o gráficos, presentaciones visuales como PowerPoint; o a crear bases de datos como
Acces u Oracle que ayudan a crear archivos y registros de datos.

Los usuarios, normalmente, compran el software de aplicaciones en discos CDs o DVDs
(antiguamente en disquetes) o los descargan (bajan) de la Red Internet y han de instalar el soft-
ware copiando los programas correspondientes de los discos en el disco duro de la computa-
dora. Cuando compre estos programas asegúrese que son compatibles con su computador y con
su sistema operativo. Existe una gran diversidad de programas de aplicación para todo tipo de
actividades tanto de modo personal, como de negocios, navegación y manipulación en Internet,
gráficos y presentaciones visuales, etc.

Los lenguajes de programación sirven para escribir programas que permitan la comunica-
ción usuario/máquina. Unos programas especiales llamados traductores (compiladores o in-
térpretes) convierten las instrucciones escritas en lenguajes de programación en instrucciones
escritas en lenguajes máquina (0 y 1, bits) que ésta pueda entender.

Los programas de utilidad 1 facilitan el uso de la computadora. Un buen ejemplo es un
editor de textos que permite la escritura y edición de documentos. Este libro ha sido escrito
con un editor de textos o procesador de palabras (“word procesor”).

Los programas que realizan tareas concretas, nóminas, contabilidad, análisis estadístico,
etc. es decir, los programas que podrá escribir en C++ o Java, se denominan programas de
aplicación. A lo largo del libro, se verán pequeños programas de aplicación que muestran los
principios de una buena programación de una computadora.

1.1.3. Sistema operativo

Un sistema operativo SO (Operating System, OS) es tal vez la parte más importante del software
del sistema y es el software que controla y gestiona los recursos del computador. En la prácti-
ca, el sistema operativo es la colección de programas de computador que controla la interacción
del usuario y el hardware del computador. El sistema operativo es el administrador principal del
computador, y por ello a veces, se le compara con el director de una orquesta ya que este soft-
ware es el responsable de dirigir todas las operaciones del computador y gestionar todos sus
recursos.

El sistema operativo asigna recursos, planifica el uso de recursos y tareas del computador,
y monitoriza las actividades del sistema informático. Estos recursos incluyen memoria, dispo-
sitivos de E/S (Entrada/Salida), y la UCP (Unidad Central de Proceso). El sistema operativo
proporciona servicios tales como asignar memoria a un programa y manipulación del control
de los dispositivos de E/S tales como el monitor el teclado o las unidades de disco. La Tabla 1.1
muestra algunos de los sistemas operativos más populares utilizados en enseñanza y en infor-
mática profesional.

Cuando un usuario interactúa con un computador, la interacción está controlada por el sis-
tema operativo. Un usuario se comunica con un sistema operativo a través de una i
  • Links de descarga
http://lwp-l.com/pdf16895

Comentarios de: Capítulo 1 - Desarrollo de software. Tipos abstractos de datos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad