stringtranslate.com

Objeto (informática)

En informática , un objeto es un elemento de programación que tiene estado , tiene operaciones asociadas y se accede a él mediante un identificador .

Objeto es una categorización en la que caen muchos conceptos de programación. Por ejemplo, un objeto puede ser una variable del lenguaje de programación , una estructura de datos , una función o un método .

En programación orientada a objetos (POO), un objeto es un tipo de datos abstracto con la adición de polimorfismo y herencia . Un sistema orientado a objetos integra código y datos como objetos, cada uno de los cuales tiene estado (datos) y comportamiento (código). Cualquier lenguaje que admita una construcción con estado y comportamiento se clasifica como basado en objetos . En un lenguaje basado en clases , un objeto también se conoce como instancia de una clase .

En el modelo relacional de gestión de bases de datos , aspectos como la tabla y la columna pueden actuar como objetos. [1]

Objetos distribuidos

El enfoque orientado a objetos no es sólo un modelo de programación. Se puede utilizar igualmente bien como lenguaje de definición de interfaz para sistemas distribuidos. Los objetos en un modelo de computación distribuida tienden a ser más detallados, más duraderos y más orientados a servicios que los objetos de programación.

Un método estándar para empaquetar objetos distribuidos es a través de un lenguaje de definición de interfaz (IDL). Un IDL protege al cliente de todos los detalles del objeto del servidor distribuido. Detalles como en qué computadora reside el objeto, qué lenguaje de programación utiliza, qué sistema operativo y otras cuestiones específicas de la plataforma. El IDL también suele ser parte de un entorno distribuido que proporciona servicios como transacciones y persistencia a todos los objetos de manera uniforme. Dos de los estándares más populares para objetos distribuidos son el estándar CORBA de Object Management Group y DCOM de Microsoft . [2]

Además de los objetos distribuidos, se han propuesto otras extensiones del concepto básico de objeto para permitir la computación distribuida:

Algunas de estas extensiones, como objetos distribuidos y objetos de protocolo , son términos específicos de dominio para tipos especiales de objetos "ordinarios" utilizados en un contexto determinado (como la invocación de métodos remotos o la composición de protocolos ). Otros, como los objetos replicados y los objetos distribuidos en vivo , son menos estándar, ya que abandonan el caso habitual de que un objeto resida en una única ubicación a la vez y aplican el concepto a grupos de entidades (réplicas) que pueden abarcar en múltiples ubicaciones, podría tener un estado débilmente consistente y cuya membresía podría cambiar dinámicamente.

La web semántica

La Web Semántica es esencialmente un marco de objetos distribuidos. Dos tecnologías clave en la Web Semántica son el Lenguaje de Ontología Web (WOL) y el Marco de Descripción de Recursos (RDF). RDF proporciona la capacidad de definir objetos básicos (nombres, propiedades, atributos, relaciones) a los que se puede acceder a través de Internet. OWL agrega un modelo de objetos más rico, basado en la teoría de conjuntos, que proporciona capacidades de modelado adicionales, como la herencia múltiple .

Los objetos OWL no son como objetos distribuidos estándar de gran tamaño a los que se accede a través de un lenguaje de definición de interfaz. Un enfoque así no sería apropiado para Internet porque Internet está en constante evolución y es difícil lograr la estandarización en un conjunto de interfaces. Los objetos OWL tienden a ser similares a los tipos de objetos utilizados para definir modelos de dominio de aplicación en lenguajes de programación como Java y C++ .

Sin embargo, existen distinciones importantes entre los objetos OWL y los objetos de programación tradicionales orientados a objetos. Los objetos tradicionales se compilan en jerarquías estáticas generalmente con herencia única, pero los objetos OWL son dinámicos. Un objeto OWL puede cambiar su estructura en tiempo de ejecución y puede convertirse en una instancia de clases nuevas o diferentes.

Otra diferencia fundamental es la forma en que el modelo trata la información que actualmente no está en el sistema. Los objetos de programación y la mayoría de los sistemas de bases de datos utilizan el " supuesto de mundo cerrado ". Si el sistema no conoce un hecho, se supone que es falso. Los objetos de la Web Semántica utilizan el supuesto de mundo abierto , una afirmación sólo se considera falsa si existe información real relevante de que es falsa; de lo contrario se supone que es desconocida, ni verdadera ni falsa.

Los objetos OWL en realidad se parecen más a objetos en lenguajes de marco de inteligencia artificial como KL-ONE y Loom.

La siguiente tabla contrasta los objetos tradicionales de los lenguajes de programación orientados a objetos como Java o C++ con los objetos de la web semántica: [4] [5]

Ver también

Referencias

  1. ^ Oppel, Andy (2005). SQL desmitificado . McGraw-Hill. pag. 7.ISBN​ 0-07-226224-9.
  2. ^ Orfali, Robert (1996). La guía esencial de supervivencia cliente/servidor. Nueva York: Wiley Computer Publishing. págs. 399–403. ISBN 0-471-15325-7.
  3. ^ Ostrowski, K., Birman, K., Dolev, D. y Ahnn, J. (2008). "Programación con objetos distribuidos en vivo", Actas de la 22ª Conferencia europea sobre programación orientada a objetos , Paphos, Chipre, 7 al 11 de julio de 2008, J. Vitek, Ed., Lecture Notes in Computer Science , vol. 5142, Springer-Verlag, Berlín, Heidelberg, 463-489, http://portal.acm.org/citation.cfm?id=1428508.1428536.
  4. ^ Berners-Lee, Tim; James Hendler; Ora Lassila (17 de mayo de 2001). "La Web Semántica Una nueva forma de contenido Web que sea significativo para las computadoras desatará una revolución de nuevas posibilidades". Científico americano . 284 : 34–43. doi : 10.1038/scientificamerican0501-34. Archivado desde el original el 24 de abril de 2013.
  5. ^ Knublauch, Holger; Oberle, Daniel; Tetlow, Phil; Wallace, Evan (9 de marzo de 2006). "Una introducción a la web semántica para desarrolladores de software orientado a objetos". W3C . Consultado el 30 de julio de 2008 .
  6. ^ Tabla extraída de tablas en: http://www.w3.org/2001/sw/BestPractices/SE/ODSD/

enlaces externos