SlideShare una empresa de Scribd logo
Programación Orientada a Objetos
Índice
3
4
4
6
8
9
1 | Programación Orientada a Objetos
1.1 | Clases y Objetos
Objetos
Clases
Creación de objetos
1.2 | Constructores
Programación Orientada a Objetos
Programación Orientada a Objetos | TELEFÓNICA /
/ 3
La programación orientada a objetos (abreviadamente POO), es
pues la evolución natural de la programación estructurada. Y es que
cuandolasaplicacionessonmuygrandes,laaplicacióndelastécnicas
básicas de la programación estructurada resultan insuficientes para
poder desarrollar programas fiables y fáciles de mantener.
1. Programación Orientada a Objetos
La mayoría de los lenguajes de programación actuales son orientados a
objetos. El hecho de que un lenguaje sea orientado a objetos no solo implica
que trabaje con objetos, sino que además se pueden aplicar una serie de
características propias de la orientación a objetos, encaminadas a reutilizar
código en las aplicaciones, a que sean más fáciles de mantener y más fiables.
Seguidamente, vamos a presentar los conceptos fundamentales en
los que se basa este modelo de programación.
Programación Orientada a Objetos | TELEFÓNICA /
/ 4
Un lenguaje orientado a objetos se basa en el uso de clases y objetos para implementar la
funcionalidad de la aplicación, por eso estos conceptos serán los primeros que vamos a abordar en
este capítulo.
1.1 | Clases y Objetos
OBJETOS
Un objeto podemos imaginarlo como una “caja negra” que expone
al exterior una serie de funciones con las que poder realizar
operaciones, así como una serie de parámetros que permiten
configurar características del objeto.
A las funciones y procedimientos que expone el objeto se les llama
métodos, mientras que a las características se les conoce como
propiedades.
Para entender mejor el concepto, pongamos un ejemplo del mundo
real, que está lleno de objetos. Pensemos, por ejemplo, en un coche.
Un coche es un tipo de objeto que expone una serie de propiedades
como el color, la matricula, el peso, etc., además de una serie de
métodosparaoperarconelmismos,comoarrancar,acelerar,frenar…
Como este tenemos muchos otros ejemplos de objetos del mundo
real. Un objeto televisor tiene una serie de propiedades como el
número de pulgadas, si es o no 3D, etc., y también unos métodos
como encender, apagar o cambiar de canal.
Llevado este concepto al mundo de la programación, el objeto es
un elemento residente en memoria y al que accedemos desde el
programa a través de una variable. A través de las propiedades
podemos configurar características del objeto utilizando la siguiente
sintaxis:
Propiedades
Métodos
Programación Orientada a Objetos | TELEFÓNICA /
/ 5
variable_objeto.propiedad=valor //asignación de valor a
una propiedad
O
a= variable_objeto.propiedad //recuperación del valor de
una propiedad
En ambos casos, para asignar un valor a una propiedad y para leer el
valor de una propiedad, se utiliza la variable que contiene el objeto
seguido del operador punto (“.”) y el nombre de la propiedad.
Dado que los métodos representan operaciones sobre el objeto, la
llamada a estos ejecutará algún código internamente en el objeto.
Para llamar a los métodos de un objeto utilizamos la sintaxis:
Donde argumento1, argumento2 son los valores que el método
requiere para poder ejecutar la tarea.
Como vemos, la llamada a un método de un objeto es muy similar a
las llamadas a procedimientos y funciones, y es que, como veremos a
continuación, un método se implementa mediante procedimientos
y/o funciones. Esto significa que puede haber métodos, aquellos
que se creen mediante una función y devuelvan un resultado al
punto de llamada, en cuyo caso se deberá recoger el valor devuelto
por el mismo:
variable_objeto.metodo(argumento1, argumento2, ..)
res = variable_objeto.metodo(argumento1, argumento2, ..)
Programación Orientada a Objetos | TELEFÓNICA /
/ 6
CLASES
Losobjetosdisponendemétodos,quesonimplementadosmediante
funciones y procedimientos, y de propiedades, que vienen a ser
variables donde se almacenan las características de los objetos.
El lugar donde se define el código de estos métodos y propiedades es
la clase. A través de estos métodos y propiedades, la clase establece
el comportamiento de un determinado tipo de objeto
A partir de la clase se crean los objetos y sobre ellos se aplican los
métodos y propiedades definidos en la misma. La clase es, por tanto,
el molde a partir del cual se pueden construir los objetos, que son
los elementos que utilizaremos en los programas para poder hacer
uso de los métodos y propiedades.
clase
creación
objeto 1 objeto 2 objeto 2
creación creación
Programación Orientada a Objetos | TELEFÓNICA /
/ 7
Cada objeto podrá tener sus propios valores de propiedades,
mientras que el comportamiento de los métodos será el mismo en
cada objeto.
Para definir una clase mediante pseudocódigo, utilizaremos la
siguiente sintaxis:
Veamos un sencillo ejemplo de creación de una clase Calculadora con
la que podemos realizar operaciones básicas con dos números, como
Sumar, Restar, Multiplicar y Dividir. Además de cuatro métodos para
realizar las citadas operaciones, dispondrá de dos propiedades para
almacenar los operandos con los que van a trabajar los métodos de
la clase.
EstaseríalaimplementaciónenpseudocódigodelaclaseCalculadora:
Según se puede apreciar, los cuatro métodos se definen mediante el
mismo tipo de funciones que estudiamos durante la programación
modular, estas funciones operan con los datos almacenados en las
propiedades, que no son más que variables a las que se les añade la
palabra property
Class NombreClase
//definición del contenido de la clase
End Class
Class Calculadora
Property operando1 Integer
Property operando2 Integer
Function Sumar()
		Return operando1+operando2
End Function
Function Restar()
		Return operando1-operando2
End Function
Function Multiplicar()
		Return operando1*operando2
End Function
Function Dividir()
		Return operando1/operando2
End Function
End Class
Programación Orientada a Objetos | TELEFÓNICA /
/ 8
CREACIÓN DE OBJETOS
Laclasedefinelosmétodosypropiedades,peroparapoderhaceruso
de los mismos se necesita un objeto sobre el que poder aplicarlos.
Para crear un objeto de una clase, utilizaremos un operador llamado
New, que es el que se emplea en la mayoría de los lenguajes de
programación. La manera de utilizarlo sería la siguiente:
Como vemos, a continuación del operador se indica el nombre de la
clase de la que queremos crear el objeto, seguido de los paréntesis.
Esta instrucción creará un objeto en memoria y lo guardará en la
variable indicada a la izquierda del signo igual. Esta variable tendrá
que ser declarada con el tipo de la clase.
A partir de ahí, ya se puede utilizar la variable objeto para acceder a
propiedades y métodos.
Para ilustrarlo con un ejemplo, vamos a hacer un programa principal
que se encargue de leer dos números y, utilizando un objeto de la
clase Calculadora definida anteriormente, muestre los resultados
de las cuatro operaciones básicas sobre los números.
variable_objeto=New NombreClase()
Inicio
Datos:
Oper Calculadora //define una variable del tipo de
la clase,
				 //en ella se guardará el objeto
N1, N2 Integer
Sum, Res, Multi, Div Integer
Código:
Leer N1, N2
Oper=New Calculadora() //crea el objeto
//asinga valores leídos a las propiedades
Oper.operando1=N1
Oper.operando2=N2
//llama a los métodos para realizar los cálculos
Sum=Oper.Sumar()
Res=Oper.Restar()
Multi=Oper.Multiplicar()
Div=Oper.Dividir()
Mostrar “Suma:”, Sum
Mostrar “Resta:”, Res
Mostrar “Multiplicación:”, Multi
Mostrar “División:”, Div
Fin
Programación Orientada a Objetos | TELEFÓNICA /
/ 9
En el ejemplo podríamos haber prescindido de las variables Sum,
Res, Multi y Div:
Mostrar “Suma:”, Oper.Sumar()
Mostrar “Resta:”, Oper.Restar()
Mostrar “Multiplicación:”, Oper.Multiplicar()
Mostrar “División:”, Oper.Dividir()
1.2 | Constructores
Hemos visto en el ejemplo anterior que para poder utilizar los métodos que realizan las operaciones
es necesario primero establecer ciertas propiedades del objeto.
En muchos casos estas propiedades se establecen nada más crear
el objeto, por lo que sería muy cómodo poder hacerlo en la misma
instrucción de creación del objeto, en vez de tener que asignar
explícitamente cada propiedad. Esto es posible hacer utilizando
constructores.
Un constructor es un bloque de código que se define dentro de una
clase y que se ejecuta en el momento en que se crea un objeto de
dicha clase. Por tanto, es el lugar ideal para inicializar propiedades
de los objetos.
Como vemos, son parecidos a los procedimientos, pero sin la palabra
Sub. Además, el nombre del constructor debe ser igual al de la clase.
NombreClase(parametro1, parametro2)
Los constructores se definen de la siguiente manera:
Programación Orientada a Objetos | TELEFÓNICA /
/ 10
Por ejemplo, si queremos definir la clase Calculadora utilizando
constructor, quedaría de la siguiente manera:
Y ya no sería necesario asignar explícitamente los valores N1 y N2 a
las propiedades Operando1 y Operando2.
Una clase puede disponer de más de un constructor, lo que ofrecería
la posibilidad de inicializar objetos de distinta forma. Todos los
constructores tendrán el mismo nombre, que es el de la clase, pero
deberán diferenciarse en el número de parámetros o en el tipo de
los mismos.
Por ejemplo, podríamos incluir en la clase Calculadora dos
constructores, uno para inicializar cada propiedad con un valor y otro
que inicializaría las dos propiedades del objeto con el mismo valor:
Al hecho de poder definir más de un constructor en una clase se le
conoce como sobrecarga de constructores.
Oper=New Calculadora(N1, N2)
Calculadora(op1 Integer, op2 Integer)
operando1=op1
operando2=op2
End
Calculadora(op Integer)
operando1=op
operando2=op
End
Programacion Orientada Objetos.pdf

Más contenido relacionado

Similar a Programacion Orientada Objetos.pdf

Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POOLibertad25
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemasjorgecaruci
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
Karen Olan
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
janinaplaza
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradavnslgars
 
Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A ObjetosAndrés
 
Excel con macros
Excel con macrosExcel con macros
Excel con macros
Danielito Flores
 
Manual de macros2 pre
Manual de macros2 preManual de macros2 pre
Manual de macros2 prejtk1
 
1. manual macrosexcel
1. manual macrosexcel1. manual macrosexcel
1. manual macrosexcel
Everth Alfonso Vargas Rubio
 
Gran tutorial-de-macros
Gran tutorial-de-macrosGran tutorial-de-macros
Gran tutorial-de-macrosklayma rivas
 
Programacion orientada a_objetos
Programacion orientada a_objetosProgramacion orientada a_objetos
Programacion orientada a_objetos
Eusebio Alvarado Mendez
 
Programacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe TocoraProgramacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe Tocora
Felipe Ardila
 
Macros en excel [106 paginas en español]
Macros en excel [106 paginas   en español]Macros en excel [106 paginas   en español]
Macros en excel [106 paginas en español]
CESAR ROGELIO TEJADA CASTAÑEDA
 
Clase 1 - Programación orientada a Objetos (2).pptx
Clase 1 - Programación orientada a Objetos (2).pptxClase 1 - Programación orientada a Objetos (2).pptx
Clase 1 - Programación orientada a Objetos (2).pptx
javierccallo
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
brandonhh10
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
Thalia Regalado Juape
 

Similar a Programacion Orientada Objetos.pdf (20)

Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POO
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemas
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
Clase numero 6
Clase numero 6Clase numero 6
Clase numero 6
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A Objetos
 
Excel con macros
Excel con macrosExcel con macros
Excel con macros
 
Manual de macros2 pre
Manual de macros2 preManual de macros2 pre
Manual de macros2 pre
 
Excel macros
Excel macrosExcel macros
Excel macros
 
1. manual macrosexcel
1. manual macrosexcel1. manual macrosexcel
1. manual macrosexcel
 
Excel macros
Excel macrosExcel macros
Excel macros
 
Gran tutorial-de-macros
Gran tutorial-de-macrosGran tutorial-de-macros
Gran tutorial-de-macros
 
Programacion orientada a_objetos
Programacion orientada a_objetosProgramacion orientada a_objetos
Programacion orientada a_objetos
 
Programacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe TocoraProgramacion orientada a objetos de Felipe Tocora
Programacion orientada a objetos de Felipe Tocora
 
Macros en excel [106 paginas en español]
Macros en excel [106 paginas   en español]Macros en excel [106 paginas   en español]
Macros en excel [106 paginas en español]
 
Clase 1 - Programación orientada a Objetos (2).pptx
Clase 1 - Programación orientada a Objetos (2).pptxClase 1 - Programación orientada a Objetos (2).pptx
Clase 1 - Programación orientada a Objetos (2).pptx
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 

Último

Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfUn libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
sandradianelly
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
https://gramadal.wordpress.com/
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
FelixCamachoGuzman
 
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptxCLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
LilianaRivera778668
 
Educar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdfEducar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdf
Demetrio Ccesa Rayme
 
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docxSESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
QuispeJimenezDyuy
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
arleyo2006
 
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdfHABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
DIANADIAZSILVA1
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
20minutos
 
Testimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdfTestimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdf
Txema Gs
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
cintiat3400
 
T3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdf
T3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdfT3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdf
T3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdf
eliecerespinosa
 
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptxAutomatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
GallardoJahse
 
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
UNIDAD DE APRENDIZAJE DEL MES  Junio 2024UNIDAD DE APRENDIZAJE DEL MES  Junio 2024
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
EdwardYumbato1
 
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNETPRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
CESAR MIJAEL ESPINOZA SALAZAR
 
corpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdfcorpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdf
YolandaRodriguezChin
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdfTexto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
ClaudiaAlcondeViadez
 
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdfAsistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Demetrio Ccesa Rayme
 
Conocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del ArrabalConocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del Arrabal
Profes de Relideleón Apellidos
 

Último (20)

Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfUn libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
 
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx1º GRADO CONCLUSIONES DESCRIPTIVAS  PRIMARIA.docx
1º GRADO CONCLUSIONES DESCRIPTIVAS PRIMARIA.docx
 
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptxCLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
CLASE N.1 ANÁLISIS ADMINISTRATIVO EMPRESARIAL presentación.pptx
 
Educar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdfEducar por Competencias GS2 Ccesa007.pdf
Educar por Competencias GS2 Ccesa007.pdf
 
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docxSESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
SESION ORDENAMOS NÚMEROS EN FORMA ASCENDENTE Y DESCENDENTE 20 DE MAYO.docx
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
 
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdfHABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
HABILIDADES MOTRICES BASICAS Y ESPECIFICAS.pdf
 
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
Horarios y fechas de la PAU 2024 en la Comunidad Valenciana.
 
Testimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdfTestimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdf
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
 
T3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdf
T3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdfT3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdf
T3-Instrumento de evaluacion_Planificación Analìtica_Actividad con IA.pdf
 
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptxAutomatización de proceso de producción de la empresa Gloria SA (1).pptx
Automatización de proceso de producción de la empresa Gloria SA (1).pptx
 
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
UNIDAD DE APRENDIZAJE DEL MES  Junio 2024UNIDAD DE APRENDIZAJE DEL MES  Junio 2024
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
 
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNETPRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
 
corpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdfcorpus-christi-sesion-de-aprendizaje.pdf
corpus-christi-sesion-de-aprendizaje.pdf
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdfTexto_de_Aprendizaje-1ro_secundaria-2024.pdf
Texto_de_Aprendizaje-1ro_secundaria-2024.pdf
 
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdfAsistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
Asistencia Tecnica Cultura Escolar Inclusiva Ccesa007.pdf
 
Conocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del ArrabalConocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del Arrabal
 

Programacion Orientada Objetos.pdf

  • 2. Índice 3 4 4 6 8 9 1 | Programación Orientada a Objetos 1.1 | Clases y Objetos Objetos Clases Creación de objetos 1.2 | Constructores Programación Orientada a Objetos
  • 3. Programación Orientada a Objetos | TELEFÓNICA / / 3 La programación orientada a objetos (abreviadamente POO), es pues la evolución natural de la programación estructurada. Y es que cuandolasaplicacionessonmuygrandes,laaplicacióndelastécnicas básicas de la programación estructurada resultan insuficientes para poder desarrollar programas fiables y fáciles de mantener. 1. Programación Orientada a Objetos La mayoría de los lenguajes de programación actuales son orientados a objetos. El hecho de que un lenguaje sea orientado a objetos no solo implica que trabaje con objetos, sino que además se pueden aplicar una serie de características propias de la orientación a objetos, encaminadas a reutilizar código en las aplicaciones, a que sean más fáciles de mantener y más fiables. Seguidamente, vamos a presentar los conceptos fundamentales en los que se basa este modelo de programación.
  • 4. Programación Orientada a Objetos | TELEFÓNICA / / 4 Un lenguaje orientado a objetos se basa en el uso de clases y objetos para implementar la funcionalidad de la aplicación, por eso estos conceptos serán los primeros que vamos a abordar en este capítulo. 1.1 | Clases y Objetos OBJETOS Un objeto podemos imaginarlo como una “caja negra” que expone al exterior una serie de funciones con las que poder realizar operaciones, así como una serie de parámetros que permiten configurar características del objeto. A las funciones y procedimientos que expone el objeto se les llama métodos, mientras que a las características se les conoce como propiedades. Para entender mejor el concepto, pongamos un ejemplo del mundo real, que está lleno de objetos. Pensemos, por ejemplo, en un coche. Un coche es un tipo de objeto que expone una serie de propiedades como el color, la matricula, el peso, etc., además de una serie de métodosparaoperarconelmismos,comoarrancar,acelerar,frenar… Como este tenemos muchos otros ejemplos de objetos del mundo real. Un objeto televisor tiene una serie de propiedades como el número de pulgadas, si es o no 3D, etc., y también unos métodos como encender, apagar o cambiar de canal. Llevado este concepto al mundo de la programación, el objeto es un elemento residente en memoria y al que accedemos desde el programa a través de una variable. A través de las propiedades podemos configurar características del objeto utilizando la siguiente sintaxis: Propiedades Métodos
  • 5. Programación Orientada a Objetos | TELEFÓNICA / / 5 variable_objeto.propiedad=valor //asignación de valor a una propiedad O a= variable_objeto.propiedad //recuperación del valor de una propiedad En ambos casos, para asignar un valor a una propiedad y para leer el valor de una propiedad, se utiliza la variable que contiene el objeto seguido del operador punto (“.”) y el nombre de la propiedad. Dado que los métodos representan operaciones sobre el objeto, la llamada a estos ejecutará algún código internamente en el objeto. Para llamar a los métodos de un objeto utilizamos la sintaxis: Donde argumento1, argumento2 son los valores que el método requiere para poder ejecutar la tarea. Como vemos, la llamada a un método de un objeto es muy similar a las llamadas a procedimientos y funciones, y es que, como veremos a continuación, un método se implementa mediante procedimientos y/o funciones. Esto significa que puede haber métodos, aquellos que se creen mediante una función y devuelvan un resultado al punto de llamada, en cuyo caso se deberá recoger el valor devuelto por el mismo: variable_objeto.metodo(argumento1, argumento2, ..) res = variable_objeto.metodo(argumento1, argumento2, ..)
  • 6. Programación Orientada a Objetos | TELEFÓNICA / / 6 CLASES Losobjetosdisponendemétodos,quesonimplementadosmediante funciones y procedimientos, y de propiedades, que vienen a ser variables donde se almacenan las características de los objetos. El lugar donde se define el código de estos métodos y propiedades es la clase. A través de estos métodos y propiedades, la clase establece el comportamiento de un determinado tipo de objeto A partir de la clase se crean los objetos y sobre ellos se aplican los métodos y propiedades definidos en la misma. La clase es, por tanto, el molde a partir del cual se pueden construir los objetos, que son los elementos que utilizaremos en los programas para poder hacer uso de los métodos y propiedades. clase creación objeto 1 objeto 2 objeto 2 creación creación
  • 7. Programación Orientada a Objetos | TELEFÓNICA / / 7 Cada objeto podrá tener sus propios valores de propiedades, mientras que el comportamiento de los métodos será el mismo en cada objeto. Para definir una clase mediante pseudocódigo, utilizaremos la siguiente sintaxis: Veamos un sencillo ejemplo de creación de una clase Calculadora con la que podemos realizar operaciones básicas con dos números, como Sumar, Restar, Multiplicar y Dividir. Además de cuatro métodos para realizar las citadas operaciones, dispondrá de dos propiedades para almacenar los operandos con los que van a trabajar los métodos de la clase. EstaseríalaimplementaciónenpseudocódigodelaclaseCalculadora: Según se puede apreciar, los cuatro métodos se definen mediante el mismo tipo de funciones que estudiamos durante la programación modular, estas funciones operan con los datos almacenados en las propiedades, que no son más que variables a las que se les añade la palabra property Class NombreClase //definición del contenido de la clase End Class Class Calculadora Property operando1 Integer Property operando2 Integer Function Sumar() Return operando1+operando2 End Function Function Restar() Return operando1-operando2 End Function Function Multiplicar() Return operando1*operando2 End Function Function Dividir() Return operando1/operando2 End Function End Class
  • 8. Programación Orientada a Objetos | TELEFÓNICA / / 8 CREACIÓN DE OBJETOS Laclasedefinelosmétodosypropiedades,peroparapoderhaceruso de los mismos se necesita un objeto sobre el que poder aplicarlos. Para crear un objeto de una clase, utilizaremos un operador llamado New, que es el que se emplea en la mayoría de los lenguajes de programación. La manera de utilizarlo sería la siguiente: Como vemos, a continuación del operador se indica el nombre de la clase de la que queremos crear el objeto, seguido de los paréntesis. Esta instrucción creará un objeto en memoria y lo guardará en la variable indicada a la izquierda del signo igual. Esta variable tendrá que ser declarada con el tipo de la clase. A partir de ahí, ya se puede utilizar la variable objeto para acceder a propiedades y métodos. Para ilustrarlo con un ejemplo, vamos a hacer un programa principal que se encargue de leer dos números y, utilizando un objeto de la clase Calculadora definida anteriormente, muestre los resultados de las cuatro operaciones básicas sobre los números. variable_objeto=New NombreClase() Inicio Datos: Oper Calculadora //define una variable del tipo de la clase, //en ella se guardará el objeto N1, N2 Integer Sum, Res, Multi, Div Integer Código: Leer N1, N2 Oper=New Calculadora() //crea el objeto //asinga valores leídos a las propiedades Oper.operando1=N1 Oper.operando2=N2 //llama a los métodos para realizar los cálculos Sum=Oper.Sumar() Res=Oper.Restar() Multi=Oper.Multiplicar() Div=Oper.Dividir() Mostrar “Suma:”, Sum Mostrar “Resta:”, Res Mostrar “Multiplicación:”, Multi Mostrar “División:”, Div Fin
  • 9. Programación Orientada a Objetos | TELEFÓNICA / / 9 En el ejemplo podríamos haber prescindido de las variables Sum, Res, Multi y Div: Mostrar “Suma:”, Oper.Sumar() Mostrar “Resta:”, Oper.Restar() Mostrar “Multiplicación:”, Oper.Multiplicar() Mostrar “División:”, Oper.Dividir() 1.2 | Constructores Hemos visto en el ejemplo anterior que para poder utilizar los métodos que realizan las operaciones es necesario primero establecer ciertas propiedades del objeto. En muchos casos estas propiedades se establecen nada más crear el objeto, por lo que sería muy cómodo poder hacerlo en la misma instrucción de creación del objeto, en vez de tener que asignar explícitamente cada propiedad. Esto es posible hacer utilizando constructores. Un constructor es un bloque de código que se define dentro de una clase y que se ejecuta en el momento en que se crea un objeto de dicha clase. Por tanto, es el lugar ideal para inicializar propiedades de los objetos. Como vemos, son parecidos a los procedimientos, pero sin la palabra Sub. Además, el nombre del constructor debe ser igual al de la clase. NombreClase(parametro1, parametro2) Los constructores se definen de la siguiente manera:
  • 10. Programación Orientada a Objetos | TELEFÓNICA / / 10 Por ejemplo, si queremos definir la clase Calculadora utilizando constructor, quedaría de la siguiente manera: Y ya no sería necesario asignar explícitamente los valores N1 y N2 a las propiedades Operando1 y Operando2. Una clase puede disponer de más de un constructor, lo que ofrecería la posibilidad de inicializar objetos de distinta forma. Todos los constructores tendrán el mismo nombre, que es el de la clase, pero deberán diferenciarse en el número de parámetros o en el tipo de los mismos. Por ejemplo, podríamos incluir en la clase Calculadora dos constructores, uno para inicializar cada propiedad con un valor y otro que inicializaría las dos propiedades del objeto con el mismo valor: Al hecho de poder definir más de un constructor en una clase se le conoce como sobrecarga de constructores. Oper=New Calculadora(N1, N2) Calculadora(op1 Integer, op2 Integer) operando1=op1 operando2=op2 End Calculadora(op Integer) operando1=op operando2=op End