Pregunta

Actualmente estoy aprendiendo el marco yü y han leído la documentación correspondiente.

pero yo todavía no entiendo los componentes. que son estos. hablan de acontecimientos y conductas componentes.

podría alguien explicar estos términos para mí y me dan ejemplos de aplicaciones reales de lo que es un componente, sus eventos y comportamientos podría ser?

sería de gran ayuda!

¿Fue útil?

Solución

A CCable por sí mismo no hace mucho. Es muy parecido a un QObject en Qt. Un CCable puede provocar eventos, y puede tener delegados a eventos (a través de attachEventHandler ()).

En cuanto a los comportamientos, el manual dice:

  

Los métodos de la conducta puede ser   invocada como si pertenecen a la   componente. comportamientos pueden ser múltiples   unidos al mismo componente.

     

Para adjuntar un comportamiento a un componente,   llamar attachBehavior; y para separar la   el comportamiento del componente, llamado   detachBehavior.

     

Un comportamiento puede ser habilitado temporalmente   o desactivada llamando enableBehavior   o disableBehavior, respectivamente. Cuando   , los métodos de comportamiento con discapacidad no puede   ser invocada a través del componente.

     

A partir de la versión 1.1.0, una   propiedades de comportamiento (ya sea en su   variables miembro públicas o su   propiedades definidas a través de getters y / o   setters) se puede acceder a través de la   componente que se adjunta a.

¿Qué le da la posibilidad de simular un y ranuras mecanismo, o la estrategia patrón (habilitando o deshabilitando comportamientos).

La mayoría de las clases en Yii tienen CCable como clase base.

Como usuario, verá los beneficios que proporcionan a través de los mecanismos antes citados cuando se va a crear sus propios componentes (bajo protegida / componentes /).

Se puede encontrar un buen punto de partida para la implementación de los componentes aquí: http: // www .yiiframework.com / doc / guía / basics.component

Otros consejos

En Yii, funciona una aplicación a través de la interacción de diferentes objetos, estos objetos puede considerarse simplemente "componentes" o "bloques de construcción" de la aplicación. Un componente es simplemente un objeto que ha sido escrito para realizar o facilitar una tarea en particular en una aplicación Yii. Si tiene vistazo a "flujo de trabajo típico de una aplicación Yii" en la [Http://www.yiiframework.com/doc/guide/1.1/en/basics.mvc] [1]

se dará cuenta de que, aparte de la vista y diseños (que se consideran scripts) y index.php, todo lo que interactúa con los demás es un componente. Todos ellos llevan a cabo diferentes tareas cuando se ejecuta la aplicación.

Casi todo en Yii es un componente (o se deriva de la clase CCable de componente).

Más específicamente,

  

implementos CCable de componente del protocolo de definir, utilizando las propiedades y eventos ".

Eventos : Eventos permiten llevar a cabo una secuencia (más de uno) de acciones cuando sucede algo específico dentro de un componente. Se define un evento y adjunta un número de funciones (acciones) a ese evento. Ahora, cada vez que el evento se produce dentro del componente, todas las funciones vinculadas a ese evento se ejecutan. Según mi entender, se trata de algo similar al concepto de ganchos en Wordpress.

La aplicación específica de eventos en un componente está definido por Yii como

  

Es útil cuando se desea interrumpir el flujo de aplicación normal sin extender las clases base.

Comportamientos : Los comportamientos son simplemente la manera de proporcionarle la herencia múltiple, que no es compatible con PHP5, mientras que la supresión de múltiples funciones problema del nombre de la misma herencia múltiple de Yii. Si desea heredar propiedades y métodos de la clase A y B. Se extiende la clase A y clase B después adjuntar como su comportamiento, y luego se pueden utilizar todos los métodos de la clase B también. Ahora bien, si A y B contenían una función llamada 'usefulfunction ()', todas las llamadas a esta función tendrán como resultado la ejecución de 'usefulfunction' solamente de la clase A. Si tanto la clase A y B se añadieron como comportamientos a una clase, entonces la llamada 'usefulfunction' daría lugar a la ejecución de método a partir del comportamiento que se adjuntó primero.

P.S. (Yo no soy un experto. Así que por favor, corríjanme si estoy en cualquier lugar equivocado.)

Tal vez esta página extra en su wiki podría proporcionar una visión más clara: http://www.yiiframework.com/wiki/44/behaviors-events/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top