tema 7 9-sistema de tipos-predefinidos-2010
Post on 10-Feb-2016
214 Views
Preview:
DESCRIPTION
TRANSCRIPT
CONCEPTOS 2010
TIPOS DE DATOS
• SISTEMA DE TIPOS: conjunto de reglas usadas por un lenguaje para estructurar y organizar sus tipos.
• Componente semántica importante.
CONCEPTOS 2010
TIPOS DE DATOS
tipo
• capturan la naturaleza de los datos del problema que serán manipulados por los programas.
• los lenguajes de programación se diferencian en la definición y comportamiento de los tipos.
conjunto de valores conjunto de operaciones
CONCEPTOS 2010
TIPOS DE DATOSObjeto instancia del tipo
(l-valor, r-valor) • Operaciones: única forma de manipular los
objetos instanciados• las operaciones protegen a los objetos de usos
ilegales• Tipo: comportamiento abstracto de un
conjunto de objetos y un conjunto de operaciones.
• Programas: funciones que mapean datos de entrada en datos de salida.
CONCEPTOS 2010
TIPOS DE DATOS
VALORESQ D
U E
I F
E I
N N
E
ELEMENTALES
DEFINIDOS POR EL USUARIO
PREDEFINIDOS
COMPUESTOS
Enteros
Reales
Booleanos
Caracter
string
enumerados ArrayRegistrosetc
+ COMPORTAMIENTO
TADS
CONCEPTOS 2010
TIPOS DE DATOS
• Los lenguajes proveen los tipos predefinidos y los constructores.
• permiten instanciar o crear objetos de datos.
• Constructores: pueden crearse tipos nuevos
• definidos por el usuario: predefinidos y constructores
nuevos comportamientosnuevas estructurasTADtipo
CONCEPTOS 2010
Dominio de un tipoDOMINIO DE UN TIPO: conjunto de valores posibles
• Un literal es una constante cuyo valor esta dado por una secuencia de símbolos.
• dominio son solamente valores atomicos entonces el tipo es escalar, elemental o primitivo.
• Si los valores del dominio están compuestos por un conjunto de datos entonces el tipo es estructurado o compuesto
CONCEPTOS 2010
TIPOS PREDEFINIDOS
reflejan el funcionamiento del hardsubyacente y son una abstracción de él.
sus valores son un string de bits que se interpreta, a través de las instrucciones de maquina, de diferentes formas de acuerdo al tipo al que pertenezcan.
CONCEPTOS 2010
Propiedades de los tipos predefinidos
• mecanismo de clasificación de los datos manejados por un lenguaje
• son la forma de proteger a los datos contra usos indebidos
• instanciar un tipo para crear un dato indica cuales son las operaciones que legalmente pueden aplicársele.
• Las ventajas de los tipos predefinidos son: – Invisibilidad de la representación– Verificación estática – Desambiaguar operadores– Control de precisión
CONCEPTOS 2010
Invisibilidad de la representación
• El programador no tiene acceso al stringde bits subyacente que representa un valor de un cierto tipo.
• Los cambios no se ven como un nuevo string, sino como un nuevo valor
• Estilo de programación: • Modificabilidad:
CONCEPTOS 2010
Verificación estática
• Si el lenguaje exige la declaración de variables, entonces las operaciones ilegales sobre una variable pueden ser detectadas por el traductor
CONCEPTOS 2010
Desambiguar operadores
• Operadores polimórficos - genéricos -o sobrecargados
• uso moderado de la sobrecarga puede contribuir a la simplicidad de un Lenguaje de Programación.
• uso excesivo de la sobrecarga puede generar programas que sean difíciles de entender
CONCEPTOS 2010
Control de precisiónalgunos lenguajes permiten controlar la precisión de los datos numéricos.
• ADA. Enteros: shortinteger,integer ,largeinteger
• optimización de espacio para el traductor • insertar chequeos en tiempo de ejecución
para monitorear los valores de las variables.
CONCEPTOS 2010
TIPOS PREDEFINIDOS ELEMENTALES
- NUMEROSREALES
ENTEROS
- BOOLEANOS
- CARACTERES
CONCEPTOS 2010
NUMEROS: CONVERSIONES
Capacidad de adecuar los tipos cuando están mezclados.
* Por tabla* Por el tipo del resultado: examinar la
expresión determinando el tipo del resultado y convirtiendo todo a ese tipo.
* Prefijo de tipo: se convierte al tipo indicado. Pedido de conversión explícito
CONCEPTOS 2010
BOOLEANOS
Valores true Operaciones and false or
not
-
ALGOLPASCAL ADA
PL/1
C
FALSE TRUE
true y false son literales
cualquier stringcon bits 0 o vacio
cualquier stringcon bits 1
FALSE,TRUE: enumerado predefinido que puede ser redefinido
variable, o constante cuyo valor sea = 0
variable, o constante cuyo valor no sea = 0
CONCEPTOS 2010
CARACTERES- STRING
Es el tipo que mas ha evolucionado
• Fortran y Algol.60 apenas considerados• PL/1: tipo string de caracteres y
operaciones de manipulación• Pascal: char y string como vectores de
char con un máximo de longitud fija. SNOBOL4 es un lenguaje especializado en el manejo de texto.
• Modula y C los string son arreglos de char
O
CONCEPTOS 2010
CARACTERES- STRING
.dinámica
Longitud
máxima
estática
libre
limitada
top related