Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/04/2007, 15:59
Avatar de MaBoRaK
MaBoRaK
 
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años, 7 meses
Puntos: 35
Busqueda Estructura MVC para Javascript + Ajax, sus experiencias...

loading...........


Bueno, en mi trabajo he propuesto lo siguiente para tener un buen manejo de nuestro Javascript.

Esta es nuestra estructura:

Código:
#Class leimnud.js
jscripts/leimnud/core___/leimnud.js
---------------/samples/implementation.html
-----------------------/modules/
                                #modules for Class leimnud.js
-------------------------------/modal/core/modal.js
-------------------------------/rpc__/core/rpc.js

#Class json.js
-------/json___/core___/json.js
---------------/samples/implementation.html
Bueno ese es un ejemplo de la estructura que propuse.

El funcionamiento sería lo siguiente.

Código PHP:
#Al principio de cualquier página
var leimnud= new maborak();
leimnud.loadModules  ="panel,rpc,modal,other";
leimnud.onLoadModules=launchThisFunction;
# Lo que esto hará será Cargar los modulos panel,rpc,modal,etc.
# en tiempo de ejecucion
# para luego llamar una funcion que comenzará lo que LA PAGINA REQUIERA 
Cada uno de estos "modulos" es un método extendido de la clase Leimnud...

sample:

Código PHP:
# file: panel.js
maborak.prototype.modules.panel=function()
{
    
this.blabla=4545;
}
# Por lo que en el Entorno de trabajo uno pueda usar
# var algunPanel= new leimnud.modules.panel();
# ... blabla 
Y ya una vez cargada la página Web tengo métodos en el framework de la forma:

Código PHP:
leimnud.loadScript({
      
module:"suggest,validator",
      
onLoad:function(){ alert("modulos cargados, puedo comenzar a usarlos"); }
}); 
o bien quitar alguno.
Código PHP:
leimnud.unloadScript({
//    module:"panel",
    
file      :"processmap"
}); 
Con esto elimino un archivo JS y cualquier llamada a el y libero memoria.... y otras utilidades.

Y muchos otros métodos mas (manejo de eventos, rpc, etc);


Con esto tengo la ventaja de que mi Javascript solo cargará Módulos necesarios para su ejecucion y no así tooodo el javascript.
Y es tambien ese el problema... porque si mi framework me genera un HTML

Código HTML:
<script type="text/javascript" src="jscripts/leimnud/core/leimnud.js"></script>
<script type="text/javascript" src="jscripts/leimnud/core/modules/panel/panel.js"></script>
<script type="text/javascript" src="jscripts/leimnud/core/modules/modal/modal.js"></script>
<script type="text/javascript" src="jscripts/leimnud/core/modules/rpc/rpc.js"></script> 
Tengo "miedo" de:
  1. Que no se carguen todos los javascript (IE soporta solo 2 threads a la vez).
  2. Se haga mas lenta la aplicacion.

Por por ejemplo, DOJO usa la misma lógica pero... por experiencia de los developers de mi trabajo dijeron que ERA LENTIIISIMO.

Entonces la pregunta, deberia olvidar todo esto y cargar todo mi framework y modulos en un solo archivo Javascript?

(O conocen alguna otra estructura) || modelo, para... hacer esto?



connection closed.
__________________

Maborak Technologies