]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Model/include/documentation.h
Se arregla el bug que hacia que el cliente levante mal archivos XML grandes.
[z.facultad/75.42/plaqui.git] / Model / include / documentation.h
index 2c39025ad07d14634458319ad1c45d7bc92326a1..48cd4f63fb4d370650052e1b79636351fa46816d 100644 (file)
@@ -6,11 +6,27 @@
        (<tt>plaqui-model</tt>) o como una biblioteca estática y ser compilado dentro de un
        ejecutable como lo hace PlaQui Server.
 
+       No se utilizó el modelo de grafo para resolver el enunciado ya que presentaba
+       varias limitaciones importantes, y no hacía que la solución sea más simple.
+       Como primer desventaja se tenía que en el grafo cada elemento era representado
+       por un vértice, menos los conductos que eran aristas, lo que hacía que el
+       objeto grafo sea el único objeto en el modelo. Esto implicaba tener una <em>super</em>
+       clase que hacía todo el trabajo y la idea de POO es descentralizar y reutilizar.
+
+       Por otro lado, y más importante aún, el modelo del grafo no permitía tener múltiples
+       circuitos independientes simulados al mismo tiempo. El enfoque utilizado permite
+       , como se muestra en el ejemplo 2_circuitos.xml, simular <em>n</em> plantas al mismo
+       tiempo, y conectar unas a otra mediante la lógica de control.
+
        \subsection page_model_general_clases Clases del Modelo.
                Para cada elemento que es posible simular, el modelo tiene una clase que se encarga
                de ello. También existe una clase PlaQui::Model::Simulator que es quien se encarga
                de manejar una simulación, cargar una planta desde un archivo XML y da una interfaz
                para poder acceder a propiedades del modelo desde el exterior.
+
+               A continuación se puede observar un diagrama de clases del modelo:
+               \image html clases.png
+               \image latex clases.eps "Diagrama de clases." width=14cm
        
        \subsection page_model_general_simulacion Simulación.
                Para entender qué es lo que vemos al simular una planta, primero debemos entender
@@ -54,7 +70,7 @@
                \subsection page_model_color Update Color.
                        Aquí comienza una cadena de mensajes similar al del update, pero esta vez se envía hacia
                        las entradas, y se pide que nos envíe el \ref PlaQui::Model::PlantItem::update_color "color".
-                       Entonces, por ejemplo, una union pide un color a cada salida y luego los suma.
+                       Entonces, por ejemplo, una unión pide un color a cada salida y luego los suma.