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

PROGRAMACIÓN AVANZADA

EL ENFOQUE ORIENTADO A
OBJETOS

Instituto de Educación superior de Comfacauca


Facultad de Ingeniería
Tecnología en sistemas empresariales de información

1
EL ENFOQUE ORIENTADO A
OBJETOS
 Que hay a nuestro alrededor?

2
EL ENFOQUE ORIENTADO A OBJETOS

 En la imagen podemos ver distintas “Cosas”:

 Personas:

 1 hombre de 35 años, 1.85 mts de estatura, 75 Kg de


peso, Ojos pardos y piel Blanca. Habla Inglés, Frances
y Español. Experto en combate cuerpo a cuerpo
(Jujitso), pilotea aviones, conduce motocicletas y
cualquier tipo de automovil. Experto Programador de
Computadoras.
3
EL ENFOQUE ORIENTADO A OBJETOS
 En la imagen podemos ver distintas “Cosas”:

 Personas:

 1 hombre de 45 años, 1.82 mts de estatura y 85 kg


de peso, ojos Oscuro y piel Morena. Habla Inglés,
Alemán, Italiano y Español. Experto estratega,
pilotea naves de combate y experto en Aikido.

4
EL ENFOQUE ORIENTADO A OBJETOS

 Mobiliario:
3 sillas color rojo, estilo Luis XV, ubicadas en distintas
coordenadas de la habitación. Espaldar tipo Acolchado.

2 mesas:
 1 mesa de 70 cm de altura con base redonda de radio 20 cm
y color dorado, estilo Isabelina, ubicada en las coordenadas
(20, 40) de la habitación. Peso maximo de soporte de 10 kg.

 1 mesa de 40 cm de altura con base rectangular de


dimensiones 25 x 35, color café, estilo Casuality, ubicadas
en las coordenas (70,80) de la habitación. Peso máximo de
soporte de 80 Kg. 5
EL ENFOQUE ORIENTADO A OBJETOS

 Mobiliario:
 1 Televisor marca Sony, de 21 pulgadas con pantalla
de plasma y color café.
 1 Control de televisor Sony color café con 14 funciones
incorporadas
 1 Salón:
 De 40 metros cuadrados, con paredes estilo rocoso,
color gris oscuro, con temperatura de 23 grados.
En el salón hay 2 personas, 3 sillas, 2 mesas, 1 TV,
1 control remoto.
6
CLASES

“Representan a
modo General los
elementos del
entorno”

7
OBJETOS

“Representan a un
elemento en
específico”

8
OBJETOS

“Representan
a un elemento
en específico”

9
OBJETOS

10
OBJETOS

11
NOTACIÓN DE MODELO

Notación Clases Notación Objetos

Los objetos
son instancias
de clases

¿Qué es un atributo?
12
¿COMO SE RESUELVEN LOS PROBLEMAS?
“Los objetos de un entorno interactúan entre
sí...”

¿Qué implica dicha interacción?

13
LAS CLASES DEBEN PODER HACER ALGO..

Qué son los métodos?

Habilidades, competencias o
destrezas.
Pueden ser realizadas por cualquier 14
instancia de la clase.
LAS CLASES DEBEN RELACIONARSE…

Qué es la jerarquía de clase?

Es una forma de relacionar las


clases
15
LAS CLASES DEBEN RELACIONARSE….
 Jerarquía tipo Herencia

El padre
Superclase
clase base

Clase hija
Subclase
Clase derivada
es un

16
LAS CLASES DEBEN RELACIONARSE….

Jerarquía tipo Agregación / Composición

Todo Parte

Todo está formado por Parte


Parte es parte de Todo
17
EXISTEN OTRAS RELACIONES ENTRE
CLASES

¿Qué pasa cuando las clases no Heredan o


Agregan?

usa

Persona puede invocar los métodos que


Control provea para ser usados por terceros. 18
PUNTOS CLAVE
– La orientación a objetos representa un cambio radical
en los métodos tradicionales de creación de software

– Los métodos tradicionales aplican procedimientos


activos a datos pasivos. Los métodos orientados a
objetos encapsulan procedimientos y datos

– La orientación a objetos se aplica a la mayoría de los


principales componentes del software incluyendo:
lenguajes, bases de datos e interfaces. El resultado
será un software que es más fácil de ampliar y
mantener, y aplicaciones que son más completas, más19
fáciles de utilizar y más flexibles

PROGRAMACIÓN

Variables vs Constantes

Variables: PUEDEN CAMBIAR


Constantes: NUNCA CAMBIAN
Tienen un nombre (identificador)
Están asociadas a un valor (tipo de dato)

20
PROGRAMACIÓN
 Tipos de datos

21
PROGRAMACIÓN

Variables, Constantes y Tipos de datos

Cómo se crean los atributos?


Atributos Constantes:
tipoDato identificador

int numero
double saldo
String tipo
22
PROGRAMACIÓN

Variables, Constantes y Tipos de datos


Cómo se crean los atributos?
Atributos Constantes:

final static tipoDato identificador

final static float tasaInteres

23
PROGRAMACIÓN
 Operadores y Expresiones

24
PROGRAMACIÓN

Operadores y Expresiones

int a=2, b=21, c=7;

b+c*a-b/c-b%a

25
PROGRAMACIÓN

Operadores y Expresiones
int a=2, b=21, c=7;
b+c*a-b/c-b%a

b + c*a – b/c - b%a


21 + 7*2 – 21/7 - 21%2
21 + 14 – 3 – 1
35 – 3 – 1
32 – 1
31 26
PROGRAMACIÓN

Operadores y Expresiones

int a=2, b=21, c=7;

a++ a=3

b-- b=22

27
PROGRAMACIÓN

 Estructura básica de un programa

28
METODOLOGÍA PARA RESOLVER
PROBLEMAS

Qué es?
Pasos:
1.Entender el problema
2.Identificar los objetos del problema
3.Dibujar el diagrama de Clases incial
4.Escribir los algoritmos para los métodos
5.Códificar
6.Compilar, ejecutar y ajustar el programa
7.Refinar el diagrama de clases
29
METODOLOGÍA PARA RESOLVER
PROBLEMAS

30
METODOLOGÍA PARA RESOLVER
PROBLEMAS

31
METODOLOGÍA PARA RESOLVER
PROBLEMAS

32
METODOLOGÍA PARA RESOLVER
PROBLEMAS

33
METODOLOGÍA PARA RESOLVER
PROBLEMAS

34
METODOLOGÍA PARA RESOLVER
PROBLEMAS

35
METODOLOGÍA PARA RESOLVER
PROBLEMAS

 Codificar

36
METODOLOGÍA PARA RESOLVER
PROBLEMAS

 Codificar

37
METODOLOGÍA PARA RESOLVER
PROBLEMAS

Compilar, Ejecutar, Validar y Ajustar

ver Código

38
METODOLOGÍA PARA RESOLVER
PROBLEMAS
Ajuste del Diagrama de Clases

39
CONSTRUCTORES Y DESTRUCTORES
Categorías de métodos

En las clases, se pueden identificar varias categorías de métodos:

Métodos inicializadores: inicializan atributos.


Métodos accedentes ó selectores: devuelven el valor de los
atributos. Cada método accedente devuelve un atributo.
Métodos mutadores o modificadores: permiten cambiar el
valor de los atributos.
Métodos visualizadores: muestran el objeto, es decir, el valor de
los atributos.
Métodos operadores: realizan cálculos y generan resultados.
Otras categorías.
40
CATEGORÍA DE LOS MÉTODOS

41
MÉTODOS CONSTRUCTORES
Los diseñadores del lenguaje decidieron asignar la tarea de
inicializar los objetos a los métodos constructores. La consideraron
tan importante que si el programador no declara ningún método
constructor, el compilador se encarga de definir un constructor de
oficio.

Un método constructor es una función miembro especial que lleva a


cabo la inicialización automática de cada objeto de la clase en el
momento en que se declara.

Un constructor es una función miembro pública con el mismo


nombre de la clase.
Sin indicación de tipo devuelto (ni siquiera void).
Se ejecuta automáticamente al crearse un objeto de la
42
clase.
TAREA
Entender qué sucedería al ejecutar el siguiente
fragmento de código:
public class Circulo {
double radio;
public Circulo(double r) {
radio = r;
}
public double getArea() {
return Math.PI*radio*radio;
}
public static void main(String[] args) {
Circulo c = new Circulo(4);
System.out.println(c.getArea());
}
} 43
REFERENCIAS
 Material desarrollado por la profesora Paola Jhoana
Rodríguez – Universidad del Valle -Cali - Colombia

44

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