CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

33
CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I

Transcript of CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

Page 1: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN I

Page 2: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

•¿Qué es O.O.P?•Entender el concepto de clase y Objeto.•Herencia, polimorfismo y encapsulación. •Trabajar con clases

Debugand Deploy

Clase

Polimorfismo

Desarrollo de taller

Herencia

Objeto

Page 3: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

É ES LA O.O

.P?

La P.O.O. (también conocida como O.O.P., por sus siglas en inglés) es lo que se conoce como un paradigma o modelo de programación. Esto significa que no es un lenguaje específico, o una tecnología, sino una forma de programar.

Cuando miramos a nuestro alrededor ¿qué vemos? pues, cosas, objetos, pero podemos reconocer estos objetos porque cada objeto pertenece a una clase, eso nos permite distinguir, por ejemplo, un perro de un auto (porque son de clases diferentes) y también un TV de otro (porque, aunque sean iguales, cada uno es un objeto distinto).

La POO no es un lenguaje de programación, es una forma de enfrentarse a ella

Page 4: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

E ES UN

A CLASE?

Page 5: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

E ES UN

A CLASE?

La palabra felino es una cosa que cumple con unas características especificas y se comporta de una forma concreta.

Page 6: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

E ES UN

A CLASE?

Page 7: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

E ES UN

A CLASE Y UN

OBJETO

?

Page 8: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

Una clase es una estructura preliminar que describe un objeto y define atributos y operaciones(Métodos - Eventos) para el objeto

Clase Carro: 4 ruedas, 1 Volante, 5 asientos, acelerar, frenar, girar.

¿QU

E ES UN

A CLASE?

OBJETOS

Page 9: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

Los objetos tienen las siguientes cualidades:

• Identidad: los objetos se distinguen uno de otro• Comportamiento: los objetos pueden realizar

tareas• Estado: los objetos almacenan información que

puede cambiar con el tiempo.

Page 10: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

Un objeto es una instancia de una clase :

Y una instancia es que a partir de la clase podemos fabricar objetos. A ese objeto construido se le denomina instancia, y al proceso de construir un objeto se le llama instanciación.

123

245

12

245

Objeto 1Objeto 1

Objeto 2Objeto 2

ClaseClase

Page 11: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

EJERCICIO CLASES Y O

BJETOS

ClasesClases ObjetosObjetos

Page 12: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

É ES LA HEREN

CIA?

La herencia especifica una relación “es un tipo de”Ejemplos:

Un Carro deportivo “es un tipo de” carroUna camioneta “es un tipo de” carro

Clase base : De la que heredamos

Clases derivadas: La que hereda de la clase base

Deportivo Camioneta

Carro

Page 13: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

Las clases utilizan abstracción para poner a disposición únicamente los elementos esenciales que definen el objeto

Respiración en Anfibios, mamiferos, peces.

Las clases utilizan encapsulación para garantizar que se cumple una abstracción.

Lo que ve el usuario: Lo que está encapsulado:

//verify language//authenticate PIN//validate account bal//adjust account bal

SERES VIVOS

Page 14: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

É ES EL POLIM

ORFISM

O?

El nombre del método reside en la clase baseLas implementaciones del método residen en las clases derivadasPoseen la característica de que varios objetos de distintas clases puedan recibir el mismo mensaje y ser capaces de responderlo, es conocido como polimorfismo

BaseTaxBaseTax

CalculateTax( )CalculateTax( )

CountyTaxCountyTax

CalculateTax( )CalculateTax( )

CityTaxCityTax

CalculateTax( )CalculateTax( )

Page 15: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

EJERCICIO CLASES Y O

BJETOS

ClasesClases ObjetosObjetos

Page 16: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

TIPOS DE DATOS

Page 17: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

TIPOS D

E DATOS

Tipo VisualBasic .NET

Tipo VisualBasic .NET

Tamaño de almacenamiento

Tamaño de almacenamiento Rango de valoresRango de valores

BooleanBoolean

DateDate

DecimalDecimal

DoubleDouble

IntegerInteger

2 bytes2 bytes

8 bytes8 bytes

16 bytes16 bytes

8 bytes8 bytes

4 bytes4 bytes

Verdadero o FalsoVerdadero o Falso

0:00:00 del 1 de enero de 0001 a11:59:59 PM del 31 de diciembre de 9999

0:00:00 del 1 de enero de 0001 a11:59:59 PM del 31 de diciembre de 9999

Hasta 29 dígitos significativos, convalores de hasta 7,9228 x 10 (con signo)

Hasta 29 dígitos significativos, convalores de hasta 7,9228 x 10 (con signo)

-4,94065645841246544E-324 a+1,79769313486231570E+308 (con signo)

-4,94065645841246544E-324 a+1,79769313486231570E+308 (con signo)

-2.147.483.648 a+2.147.483.647 (con signo)

-2.147.483.648 a+2.147.483.647 (con signo)

StringString VaríaVaría 0 a 2.000 millones aproximadamente de caracteres Unicode

0 a 2.000 millones aproximadamente de caracteres Unicode

28

Page 18: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

BooleanBoolean Condiciones de Verdadero o Falso

Condiciones de Verdadero o Falso

VerdaderoVerdadero

Escogertipo de datos…

Escogertipo de datos… para gestionar…para gestionar… EjemploEjemplo

Short, Integer,Long, Byte

Short, Integer,Long, Byte

EnterosEnteros 23 (Entero)

23 (Entero)

Double, Decimal

Double, Decimal

Números con enterosy partes de fracciones

Números con enterosy partes de fracciones

9456,72(Decimal)

9456,72(Decimal)

DateDate Valores fecha y horaValores fecha y hora 02/12/200312:30:42 A.M.

02/12/200312:30:42 A.M.

StringString Caracteres imprimibles yvisualizables en pantalla

Caracteres imprimibles yvisualizables en pantalla

“Casa”“Casa”

ObjectObject Un puntero al valor deun objeto

Un puntero al valor deun objeto

myClassmyPerson

myClassmyPerson

¿ CÓM

O ESCO

GER U

N TIPO

DE DATO

S ?

Page 19: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

¿QU

É SON

LAS VARIABLES?

Las variables almacenan valores que pueden cambiar cuando una aplicación se está ejecutando

Las variables tienen seis elementos básicos:

ElementoElemento DescripciónDescripción

NombreNombre La palabra que identifica la variable en códigoLa palabra que identifica la variable en código

DirecciónDirección La ubicación de memoria donde se almacena el valorLa ubicación de memoria donde se almacena el valor

Tipo de datosTipo de datos El tipo y tamaño inicial de datos que la variable puede almacenarEl tipo y tamaño inicial de datos que la variable puede almacenar

ValorValor El valor en la dirección de la variableEl valor en la dirección de la variable

ÁmbitoÁmbito El conjunto de todo el código que puede acceder y utilizar la variableEl conjunto de todo el código que puede acceder y utilizar la variable

VidaVida El intervalo de tiempo durante el cual una variable es válidaEl intervalo de tiempo durante el cual una variable es válida

Page 20: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

VARIABLES FRENTE A CO

NSTAN

TES

VariableVariable ConstantConstant

Values change asapplication runs

Values change asapplication runs

Uses more memory thanconstants

Uses more memory thanconstants

Values stay the same asapplication runs

Values stay the same asapplication runs

Uses less memory thanvariables

Uses less memory thanvariables

VariablesVariables ConstantesConstantes

Los valores cambian mientras se ejecuta la aplicación

Los valores cambian mientras se ejecuta la aplicación

Utilizan más memoria que las constantes

Utilizan más memoria que las constantes

Los valores no cambian mientras se ejecuta la aplicación

Los valores no cambian mientras se ejecuta la aplicación

Utilizan menos memoriaque las variables

Utilizan menos memoriaque las variables

Sintaxis para declarar una constante: Const Nombredelaconstante As Type

Page 21: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

LECCIÓN

: ÁMBITO

DE U

NA VARIABLE

Módulo o clase Public Public a As Integer

Módulo o clase Friend Friend b As Date

Módulo o clase Private Private c As String

Procedimiento o bloque Dim d As Integer

Otros proyectos de la solución pueden acceder a la variable a

Otros proyectos de la solución pueden acceder a la variable a

Puede accederse a la variable b desde cualquier lugar del proyecto

Puede accederse a la variable b desde cualquier lugar del proyecto

Puede accederse a la variable c desde cualquier lugar del módulo

Puede accederse a la variable c desde cualquier lugar del módulo

Sólo puede accederse a la variable d dentro del procedimiento o bloque

Sólo puede accederse a la variable d dentro del procedimiento o bloque

Page 22: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

EJERCICIO D

ECLARACIÓN

DE

VARIABLES

Variable - TipoVariable - Tipo ValorValor

Page 23: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

SENTENCIAS DE CONTROL

Page 24: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES IF…TH

EN Se utilizan para una decisión True o False

Si la condición es True, se ejecutan las instrucciones que siguen a la instrucción If

Si la condición es False, las instrucciones que siguen a la instrucción If no se ejecutan

If Sueldo < 5000000 Then Bonificacion = (10 * Sueldo)/100

End If

If Sueldo < 5000000 Then Bonificacion = (10 * Sueldo)/100

End If

Page 25: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES IF.. TH

EN. ELSE

Se utilizan para una decisión con dos opciones como mínimo.

Cada instrucción If debe tener una End If correspondiente.

Si la condición es True, se ejecutarán las instrucciones que siguen a la instrucción If

Si la condición es False, no se ejecutarán las instrucciones que siguen a la instrucción If

If Sueldo < 5000000 Then Bonificacion = (10 * Sueldo)/100

ElseBonuficacion = 0

End If

If Sueldo < 5000000 Then Bonificacion = (10 * Sueldo)/100

ElseBonuficacion = 0

End If

Page 26: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES SELECT CASESeleccionan un bloque de código a ejecutar basándose en

una lista de posibles elecciones.

Se utilizan como alternativa a complejas instrucciones If…Then…Else anidadas.

Si varias instrucciones Case son verdaderas, únicamente se ejecutan las instrucciones que pertenecen a la primera instrucción Case verdadera

Select Case NotaCase 1

Nota = “D”Case 2,3

Nota = “A”Case 4 to 6

Nota = “S” Case Else

Nota = “E”End Select

Select Case NotaCase 1

Nota = “D”Case 2,3

Nota = “A”Case 4 to 6

Nota = “S” Case Else

Nota = “E”End Select

Page 27: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

DIRECTRICES PARA ELEG

IR UN

A ESTRUCTU

RA DE D

ECISIÓN

•Las instrucciones If…Then se utilizan para controlar la ejecución de un único bloque de código.

•Las instrucciones If…Then…Else se utilizan para controlar la ejecución de dos secciones de código mutuamente excluyentes.

•Las instrucciones Select Case se utilizan cuando se dispone de una lista de valores posibles.

Page 28: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

LECCIÓN

: USO

DE ESTRU

CTURAS D

E BUCLE CO

ND

ICION

ALES

•Cómo utilizar instrucciones For…Next

•Cómo utilizar instrucciones For Each…Next

•Cómo utilizar instrucciones Do…Loop

•Cómo utilizar instrucciones Exit

Page 29: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES FOR…

NEXT

Se utilizan cuando conocemos el número de veces que deseamos que se repita la ejecución de un código

For i = 0 to 4Suma= Suma + 3

Next' En orden inversoFor i = 4 to 0 Step -1

Suma= Suma +3Next

For i = 0 to 4Suma= Suma + 3

Next' En orden inversoFor i = 4 to 0 Step -1

Suma= Suma +3Next

Page 30: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES DO

…LO

OP

Do…Loop UntilEjecuta el código del bucle y evalúa la condición. Repite hasta

que la condición se evalúa como True.Do Until…Loop

Ejecuta el código en el bucle sólo si la condición se evalúa como False, y repite hasta que la expresión sea True.

Do…Loop WhileEjecuta el código en el bucle y evalúa la condición. Repite

hasta que la condición sea False.Do While…Loop

Ejecuta el código en el bucle sólo si la condición se evalúa como True, y repite hasta que la expresión sea False.

Page 31: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES EXIT

Do Until y = -1 If x < 0 Then Exit Do

x = Sqrt (x) If y > 0 Then Exit Do

y = y + 3 If z = 0 Then Exit Do

z = x / yLoop

Do Until y = -1 If x < 0 Then Exit Do

x = Sqrt (x) If y > 0 Then Exit Do

y = y + 3 If z = 0 Then Exit Do

z = x / yLoop

Se utilizan para salir inmediatamente de bucles Do o bucles For cuando se cumple una condición

Page 32: CONCEPTOS BÁSICOS DE PROGRAMACIÓN ORIENTADA A OBJETOS PROGRAMACIÓN I.

CÓM

O U

TILIZAR INSTRU

CCION

ES FOR

EACH…

NEXT

Una colección es un conjunto de objetos agrupados juntos y a los que se hace referencia como una unidad. Por ejemplo:

• Elementos de un cuadro de lista forman parte de una colección de Elementos

• Un formulario tiene una colección de Controles que representan todos los controles de ese formulario

Las instrucciones For Each … Next se utilizan para recorrer los elementos de una colecciónSub LightBlueBackground (. . .) Dim ThisControl As System.Windows.Forms.Control For Each ThisControl In ThisForm.Controls

ThisControl.BackColor = System.Drawing.Color.LightBlue Next ThisControl

End Sub

Sub LightBlueBackground (. . .) Dim ThisControl As System.Windows.Forms.Control For Each ThisControl In ThisForm.Controls

ThisControl.BackColor = System.Drawing.Color.LightBlue Next ThisControl

End Sub