En este laboratorio, desarrollarás una aplicación de base de datos de lista de contactos como la de tu teléfono.
En esta página, desarrollarás un tipo de dato abstracto (TDA) para almacenar y acceder a datos de contacto (nombre, dirección, número de teléfono, etc.).
Un tipo de datos abstracto (abstract data type, ADT por sus siglas en inglés) es un tipo de dato personalizado que tiene un significado específico para tu programa. Aprendiste sobre los tipos de datos y los TDA enUnidad 2 Laboratorio 2 Página 2: Planificación de una aplicación de cuestionario.
elemento de prueba
tipo de dato abstracto para almacenar las preguntas y respuestas en una lista de elementos de prueba. Aquí, podemos crear un tipo de dato abstracto contacto
para almacenar los datos de cada contacto en nuestra lista de contactos.contacto
y luego selectores para acceder al nombre
, dirección
y número de teléfono
para cualquier contacto dado.Los proyectos de Snap! no son seguros. No utilices tu información personal ni la de tus compañeros.
contacto con nombre: %nombre dirección: %dirección teléfono: %teléfono
contacto
constructor que acepte tres datos como entrada: el nombre del contacto, el número de teléfono y la dirección.nombre del contacto
, dirección del contacto
o teléfono del contacto
. Es importante asegurarse de que tus entradas a una función coincidan con el tipo de entrada esperado. Por ejemplo, el tipo de entrada de dirección de contacto
coincide con el tipo de salida de contacto
; ambos son del tipo "contacto".
Si llamas a dirección de contacto
con una entrada que no coincide, como una lista de contactos (por ejemplo, la variable lista de contactos o el resultado de ejecutar mantener
y tener un subconjunto de esa lista), no funcionará. Eso puede sonar obvio, pero de hecho, los programadores principiantes cometen errores como ese todo el tiempo; tienes que aprender a pensar en los tipos de entrada y salida de tus funciones cada vez que escribes o usas una.
Eso también ocurre con las entradas al constructor contacto
; no puedes poner algo que no sea un nombre en la entrada de nombre para contacto
.
Resulta un tanto artificial usar el constructor como entrada para un selector; estas imágenes son solo ejemplos para mostrar lo que los selectores deberían poder hacer cuando se les da un contacto como entrada. En tu programa, los selectores tomarán un elemento de la lista de contactos como entrada y generarán la parte correcta de ese contacto, así:
contacto
para agregar
algunos contactos a tu lista de contactos.
nombre | dirección | teléfono |
---|---|---|
Jasmine Anderson | 123 Main St. #4, Nueva York, NY 10001 | 212-555-1234 |
Morgan Preston | 149 E. 16th Ave., Sunnyvale, CA 94089 | 408-555-6789 |
Omar Hernandez | 369 Center St., Boston, MA 02130 | 617-555-1098 |
nombre
, dirección
o teléfono
de un contacto de tu lista.