Modelo de objetos simplificado ============================== .. |mo1| image:: images/modelo_de_objetos_simplificado.png Aquí podemos ver un esquema con los componentes de uso más común desde scripting, la relación entre ellos y cómo podemos acceder a ellos desde nuestro script. Además podemos navegar a la información de la clase Java pulsando sobre el componente. .. note:: Desarrolladores Java y usuarios con conocimientos sobre UML. El diagrama y comentarios está pensado para que sea lo más entendible posible por un usuario sin conocimientos de java ni UML, no para ser estricto con la nomenclatura UML. .. raw:: html Cómo interpretar el diagrama ++++++++++++++++++++++++++++ En el diagrama anterior podemos ver: - **Cajas en amarillo**, que representan a objetos que podemos encontrarnos y con los que podemos trabajar. - **Cajas en verde**, nos indican acciones que podemos realizar desde nuestro script. Por ejemplo, podemos ver: .. figure:: images/interpretar-funcion.png :align: center Lo interpretaremos como que disponemos de una **función**, ``currentProject()``, que podemos ejecutar desde nuestro script para obtener el objeto con el que está relacionada, en este caso el **project**. Para los elementos etiquetados como **función** precisaremos haber importado el modulo ``gvsig``:: from gvsig import * - **Cajas en azul**, nos indica que se trata de una entidad abstracta. Nunca encontraremos objetos de este tipo. Hacen referencia de forma genérica a un grupo de objetos con características comunes; por ejemplo, tendremos un :javadoc:`Document ` que agrupa las características comunes de :javadoc:`ViewDocument `, :javadoc:`TableDocument ` o :javadoc:`LayoutDocument `. En el diagrama podemos encontrarnos, por ejemplo: .. figure:: images/interpretar-herencia.png :align: center Aquí tendríamos una entidad :javadoc:`FFrame ` abstracta, no nos encontraremos nunca objetos de este tipo, lo que nos encontraremos será objetos de tipo :javadoc:`FFrameView `, :javadoc:`FFramePicture ` o :javadoc:`FFrameText `, y nos indica que todos los objetos concretos relacionados con :javadoc:`FFrame ` tendrán un conjunto de atributos y operaciones comunes. - **Asociaciones entre objetos**, que nos indican qué a partir de un objeto podemos obtener otro o un conjunto de otros. Por ejemplo: .. figure:: images/interpretar-asociacion.png :align: center Nos indica que si disponemos de un objeto :javadoc:`LayoutDocument `, podemos obtener el objeto :javadoc:`LayoutContext ` invocando a la operación o método ``getLaypoutContext``:: laypoutContext = layoutDocument.getLaypoutContext()