Вы находитесь на странице: 1из 17

PROGRAMACIÓN ORIENTADA

Objective-C
OBJETOS

PO O
PUERTA
Hasta ahora la programación
era de flujo: PROGRAMACIÓN
ESTRUCTURADA

Ahora programamos tal y como


expresaríamos las cosas en la
vida real.

La POO nos permite pensar en


la programación de manera
similar a como lo hacemos en
la vida diaria.
PUERTA
Allá donde estéis ¿tenéis
una puerta cerca?

Que funciones hace: abrir y


cerrar (MÉTODOS)

Que tipo de puerta es:


blindada, marrón,
acristalada,...
(PROPIEDADES o
ATRIBUTOS)
P
Paradigma de la programación

Cuando hablamos de PARADIGMA:

Es la manera de pensar SUBJETIVA del programador.

El mismo programa puede tener tantas versiones


como programadores lo hagan, diferente según el
programador.
P
Si encargamos una
puerta a dos
carpinteros distintos,
cada uno nos dará un
presupuesto y una
solución diferente.
P
Todo es según el cristal
con que se mire.
¿Significa que puedo
hacer lo que quiera con
el código?
P
Obviamente NO, aunque la
curva de aprendizaje
inicialmente es complicada,
conviene prestar atención a
las formas y usos para lograr
un código fluido y situarlo
dentro de la convención.
DICCIONARIO de TÉRMINOS
• Clase: Propiedad y comportamiento de un tipo de objeto concreto.

• Objeto: Entidad provista de un conjunto de atributos (datos) y de comportamiento o funcionalidad (métodos).


Es una instancia a una clase.

• Instancia: Lectura de los datos y funciones de una clase y la creación de un objeto a partir de éstos.

• Atributo: Datos y propiedades del objeto.

• Método: Algoritmo asociado a un objeto. Define aquello que el objeto puede hacer.

• Evento: Acción que provoca una interacción del usuario con la máquina.

• Mensaje: La comunicación dirigida a un objeto ordenándole que ejecute uno de sus métodos.

}
• Abstracción: Razonamiento para crear las clases capaces de dar la solución al planteamiento.

Características
• Herencia: Una clase puede heredar los campos y métodos de otra clase. Destacadas de
POO

• Polimorfismo: Varios objetos de la misma clase pueden actuar de diferente manera.


Objective-C
• Lenguaje de programación basado en C
• Trabaja orientado a objetos.
• Estructurado en clases, objetos, variables de
instancias, métodos, etc.

• 3º en el ranking TIOBE
• Controlado por Apple y NextStep
• Antiguo: +30 años
Objetos:

Comportamiento:
MÉTODO
y
Estado:
ATRIBUTOS
El Programador

Tiene que dar vida a los objetos:

• Cómo es
ATRIBUTOS

• Que hará
MÉTODOS
Diferencia P.E. vs P.O.O.

Programación Estructurada

• Se escriben funciones
que procesan datos
Diferencia P.E. vs P.O.O.
Programación Orientada a
Objetos

• Se crean objetos para


luego enviarles
mensajes solicitándoles
que realicen sus
métodos por sí
mismos.
CLASE
Propiedad y comportamiento
de un objeto concreto
ATRIBUTO
Propiedad del objeto

MÉTODO
Lo que un objeto
OBJETO
Instancia de una clase
puede hacer
(algoritmo)
MENSAJE
Comunicación dirigida a un
objeto ordenándole que
ejecute uno de sus métodos
EJEMPLO
¿Que necesito para madrugar?
Compro lo que voy a necesitar: un despertador.

En la tienda:
- Quiero una CLASE de despertador ¿que INSTANCIAS de OBJETO de
la CLASE despertador tiene?

- Tiene esta INSTANCIA de la CLASE despertador con estos


ATRIBUTOS: eléctrico, 2 tipos de sonido, hora … esta otra INSTANCIA
con los ATRIBUTOS: pilas, 5 tipos de alarma, hora … o esta otra
INSTANCIA con los ATRIBUTOS: solar, radio y da la hora.

- Me quedo con esta INSTANCIA de OBJETO de la CLASE despertador


EJEMPLO
Si quiero madrugar, lo que debo de hacer es preparar el
despertador para levantarme a una hora en concreto
(FUNCIÓN o MÉTODO) programar el despertador:

CLASE INSTANCIADEOBJETO (ATRIBUTOS) {


! FUNCIÓN o MÉTODO
}

Despertador modeloElegido (solar, radio, hora) {


! ! SONAR A LAS 7 A.M.
}
EJEMPLO
Instanciación en Objective-C : (ejemplo orientativo)

Despertador * modeloElegido = [ [ Despertador alloc ] init ] ;

[ modeloElegido sonar ] ;

if ( [ modeloElegido.hora = 7.00 a.m. ] ) {


sonar = YES;
} else {
sonar = NO;
}
}

Вам также может понравиться