Ver Mensaje Individual
  #4 (permalink)  
Antiguo 02/02/2009, 17:39
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Respuesta: Implementar metodos en una nueva funcion

Vamos por partes, cuando queremos que una función anónima se autoejecute, usamos esta sintaxis:
Código PHP:
(function(){...})(); 
Es decir, la envolvemos en paréntesis y agregamos dos más al final, como cuando invocamos una función con nombre para que se ejecute.
Esa función retorna un objeto con 2 métodos públicos (add y extend), pero a su vez contiene en su interior la declaración de un objeto que alberga los métodos y propiedades privadas, que son los que están destinados a heredarse a otros objetos.
pp es el objeto que queremos extender. El método add de obj es el que permite agregarle a obj más métodos para que sean heredados por cualquier objeto (en este caso pp) que deseemos que tenga los métodos y propiedades privadas del objeto obj.
Adicionalmente, lo que hacen normalmente los frameworks es agregar una variable global para hacer referencia a los objetos extendidos. En este caso, por ejemplo, la variable podría ser:
Código PHP:
window.$=obj.extend 
Entonces, podés referenciar el objeto como:
Código PHP:
$(pp
Más o menos así funciona, aunque hay que optimizarlo mejor para usarlo de esa manera, pero así como está es más fácil de entender.