Cómo personalizar el comportamiento de las clases marco ios: subclases y delegar

A pesar de que va a crear clases de sus propias clases (en especial modelo) para su aplicación de iOS, a menudo vas a querer personalizar el comportamiento de una clase de entramado particular. Tiene tres maneras de ir sobre él:

Video: Extender de una clase en Java - Clases y subclases

  • subclases

  • delegando

    Video: Destiny MEJOR CLASE O PERSONAJE | MEJORES HABILIDADES | DINOS CUAL ES EL TUYO

  • propiedades declaradas

subclases

Objective-C, al igual que otros lenguajes de programación orientados a objetos, que permite basar una nueva clase de una clase que ya ha declarado. La clase base se denomina superclass- la nueva clase es su subclase. Cada subclase que defina hereda métodos y variables de instancia de su superclase.

se espera que sean subclases algunas clases del framework. Entre ellos se encuentran los controladores de vista, que se le subclassing un poco. De hecho, hay algunas clases que no se crean instancias directamente: Estos son llamados abstracto clases. Sus subclases se pueden crear instancias directamente: Estos son llamados hormigón instancias.

Casi todos los lenguajes de programación orientados a objetos soportan subclasificación. Sin embargo, hay un poco de un problema a veces. Se llama el herencia múltiple problema: que es cuando se desea que una clase sea una subclase de dos clases. No hay ningún problema si los dos subclases están en la jerarquía de clases. Usted podría tener una clase llamada estructura, una subclase llamada estructura residencial, y una subclase de ambos llamado casa.

Pero, ¿qué hacer si quieres casa a ser una subclase tanto de la estructura y de inversión?

El patrón de Delegación

Delegación es un modelo utilizado ampliamente en los marcos de iOS, tanto es así que, si quieres que hacer ningún trabajo de desarrollo de aplicaciones serio, vas a tener que conseguir su cabeza alrededor de ella. De hecho, cuando se hacer entiende, su vida instantáneamente convertido en mucho más fácil de manejar.

En lugar de crear subclases de un objeto, un objeto delegados la tarea de poner en práctica una de sus responsabilidades a otro objeto. Usted está utilizando un objeto de la conducta rica suministrada por el marco como es y poner el código de conducta específica del programa en un objeto separado (delegado). Cuando se realiza una solicitud del objeto marco, el método del delegado que implementa el comportamiento específico del programa es llamado automáticamente.

marcos iOS dependen en gran medida el patrón de delegación.

Video: El Anuncio Publicitario según la clase social

Por ejemplo, el UIApplication identificadores de objetos mayor parte del trabajo real que se necesita para ejecutar la aplicación. Pero, como se vio, envía a su delegado aplicación del aplicación: didFinishLaunchingWithOptions: mensaje para darle la oportunidad de crear objetos del modelo que son únicas para su aplicación.

Cuando un objeto de marco se ha diseñado para utilizar delegados para aplicar determinadas conductas, los comportamientos que requiere (o le da la opción de implementar) se definen en una protocolo.

Video: LAS CLASES SOCIALES Y EL CONSUMIDOR

Los protocolos definen una interfaz que implementa el objeto delegado. En iOS, protocolos pueden ser formal o informal. protocolos formales incluyen soporte para cosas como la comprobación de tipos y tiempo de ejecución de la comprobación para ver si un objeto se ajusta al protocolo.

En un protocolo formal, por lo general no tiene que poner en práctica toda la métodos- muchos se declaran opcional, lo que significa que usted tiene que aplicar sólo los relevantes para su aplicación. Antes de que un protocolo formal intenta enviar un mensaje a su delegado, el objeto anfitrión determina si el delegado implementa el método (a través de una respondsToSelector: mensaje) para evitar la vergüenza de ramificación en ninguna parte si no se implementa el método.

Un protocolo puede ser adoptado por cualquier clase siempre que implementa los métodos requeridos del protocolo. De este modo, mediante la adopción de uno o más protocolos y convertirse en un delegado, una sola clase puede implementar la funcionalidad de otras dos clases - que proporciona una aproximación de la herencia múltiple.

Artículos Relacionados