Programacion

Páginas: 5 (1008 palabras) Publicado: 24 de agosto de 2010
Tipos en lenguajes OO Limitaciones de sistemas invariantes

Tipos para Lenguajes Orientado a Objetos
Eduardo Bonelli
Departamento de Computaci´n o FCEyN UBA

27 de junio, 2006

Eduardo Bonelli

Tipos para Lenguajes Orientado a Objetos

Tipos en lenguajes OO Limitaciones de sistemas invariantes

Introducci´n o Tipos para lenguajes OO Subtipado y herencia

Introducci´n o
Todos loslenguajes “modernos” cuentan con sistemas de tipos Ya hemos discutido los beneficios de contar con sistemas de tipos Los lenguajes orientados a objetos tambi´n cuentan con e sistemas de tipos Sin embargo, los sistemas de tipos en lenguajes OO tienen sus limitaciones pues hacer type checking para lenguajes OO no es f´cil: a “Type checking object-oriented languages is difficult”a
a Kim Bruce,Foundations of Object Oriented Languages, MIT Press,2002.

Eduardo Bonelli

Tipos para Lenguajes Orientado a Objetos

Tipos en lenguajes OO Limitaciones de sistemas invariantes

Introducci´n o Tipos para lenguajes OO Subtipado y herencia

Introducci´n o
Desde mediados de los 80 en adelante han habido numerosos esfuerzos por realizar estudios “te´ricos” que analizan o sistemas de tipos paradistintos modelos de lenguajes orientados a objetos A pesar de que en la actualidad se usan lenguajes OO que cuentan con sistemas de tipos, el inter´s radica en que: e
Los sistemas de tipo hist´ricamente significativos como el de o SIMULA o aquel propuesto por Borning e Ingallsa para SmallTalk ten´ problemas significativos ıan
Un programa bien tipado podr´ en tiempo de ejecuci´n, ıa, o env´ unmensaje a un objeto que no cuenta con un m´todo ıar e para responder al mismo, justamente el motivo por el cual el sistema de tipos fue introducido! A type declaration and inference system for Smalltalk, POPL 1982
Eduardo Bonelli Tipos para Lenguajes Orientado a Objetos a

Tipos en lenguajes OO Limitaciones de sistemas invariantes

Introducci´n o Tipos para lenguajes OO Subtipado y herenciaIntroducci´n o
Desde mediados de los 80 en adelante han habido numerosos esfuerzos por realizar estudios “te´ricos” que analizan o sistemas de tipos para distintos modelos de lenguajes orientados a objetos A pesar de que en la actualidad se usan lenguajes OO que cuentan con sistemas de tipos, el inter´s radica en que: e
Hay muchos usuarios de lenguajes OO que consideran que los sistemas de tiposactuales imponen restricciones demasiado severas para permitir programaci´n OO verdadera o Vamos a ver algunos ejemplos en la clase de hoy

Eduardo Bonelli

Tipos para Lenguajes Orientado a Objetos

Tipos en lenguajes OO Limitaciones de sistemas invariantes

Introducci´n o Tipos para lenguajes OO Subtipado y herencia

Plan de la clase de hoy

Tipos en lenguajes OO Subtipado y herenciaSistemas de tipos invariantes Ilustrar a trav´s de ejemplos algunas limitaciones de sistemas e de tipos invariantes

Eduardo Bonelli

Tipos para Lenguajes Orientado a Objetos

Tipos en lenguajes OO Limitaciones de sistemas invariantes

Introducci´n o Tipos para lenguajes OO Subtipado y herencia

Tipos para lenguajes OO
La noci´n de clase y de tipo se mantienen separadas o
La clase esuna noci´n inherentemente de implementaci´n: o o establece, entre otras cosas, variables de instancia privadas, c´digo fuente de los m´todos, etc. o e El tipo de un objeto representa solamente la interfase p´blica u del mismo
nombres de todos los m´todos e tipo de los argumentos de cada m´todo y tipo del resultado e

De esta manera, la especificaci´n de un objeto (representado o por su su tipo)no se mezcla con su implementaci´n o (especificado en su clase) Esta separaci´n beneficia el desarrollo modular de sistemas: o varias clases pueden instanciar objetos con el mismo tipo El tipo de un objeto a veces se conoce como interface type
Eduardo Bonelli Tipos para Lenguajes Orientado a Objetos

Tipos en lenguajes OO Limitaciones de sistemas invariantes

Introducci´n o Tipos para...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programación
  • Programacion
  • Programacion
  • Programación
  • Programacion
  • Programacion
  • Programacion
  • Programacion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS