En informática , en un programa orientado a objetos , grupos de objetos forman una red a través de sus relaciones entre sí, ya sea mediante una referencia directa a otro objeto o mediante una cadena de referencias intermedias. Estos grupos de objetos se denominan grafos de objetos , en referencia a los objetos matemáticos llamados grafos que se estudian en la teoría de grafos . [ 1 ] [ 2 ]
Un grafo de objetos es una representación visual de un sistema de objetos en un momento determinado. A diferencia de un modelo de datos convencional, como un diagrama de clases del Lenguaje Unificado de Modelado (UML) , que detalla las relaciones entre clases , el grafo de objetos relaciona sus instancias . Los diagramas de objetos son subconjuntos del grafo de objetos general.
Las aplicaciones orientadas a objetos contienen complejas redes de objetos interrelacionados. Los objetos están vinculados entre sí, ya sea porque un objeto posee o contiene otro, o porque mantiene una referencia a otro. Esta red de objetos se denomina grafo de objetos y es la estructura más abstracta que se puede utilizar para describir el estado de una aplicación.
Representación física
Un grafo de objetos es un grafo dirigido , que puede ser cíclico . Cuando se almacena en la RAM , los objetos ocupan diferentes segmentos de la memoria con sus atributos y tabla de funciones, mientras que las relaciones se representan mediante punteros o un tipo diferente de controlador global en lenguajes de alto nivel.
Ejemplos
Por ejemplo, una clase Car puede componer una clase Wheel. En el grafo de objetos, una instancia de Car tendrá hasta cuatro enlaces a sus ruedas, que pueden denominarse frontLeft, frontRight, back Left y back Right. Un ejemplo de representación de lista de adyacencia podría ser algo como lo siguiente:
c:Coche → {delantera izquierda:rueda, delantera derecha:rueda, trasera izquierda:rueda, trasera derecha:rueda}.Véase también
Referencias
- ↑ Potter, John; Noble, James; Clarke, David (1998). "Los entresijos de los objetos" . Actas de la Conferencia Australiana de Ingeniería de Software de 1998 (Cat. No. 98EX233) . Adelaida, SA, Australia. págs. 80–89 . Bibcode : 1998aswe.conf....9P . doi : 10.1109/ASWEC.1998.730915 .
{{cite book}}: CS1 mantenimiento: falta el editor de ubicación ( enlace ) - ↑ Campbell, Matthew (2012). «Trabajando con grafos de objetos». Objective-C Recipes: A Problem-Solution Approach . Apress. pp. 283–338 . ISBN 978-1-4302-4372-4.
- Diagramas de modelado de datos
