SlideShare una empresa de Scribd logo
1 de 41
DEFINICIÓN :
• POO u (OOP según sus siglas en inglés): es un
paradigma de programación que usa objetos y sus
interacciones para diseñar aplicaciones y programas de
computadora. Está basado en varias técnicas,
incluyendo herencia, modularidad, polimorfismo, y
encapsulamiento.
CONCEPTOS BÁSICOS
CLASE
• Una clase es una plantilla que define las variables y los
métodos que son comunes para todos los objetos de un
cierto tipo. Por lo tanto, para que pueda haber objetos,
antes debe haberse definido las clases a las que
pertenecerán dichos objetos.
PARTE PÚBLICA
• Describe a qué operaciones responden los objetos de una clase
(cómo se comportan los objetos). En esta parte de la clase se
declaran las cabeceras de los métodos de la clase que podrán ser
"invocados" por los objetos.
PARTE PRIVADA
• Describe los datos de la clase y cómo las operaciones manipulan
dichos datos. Esta parte de la clase es donde se oculta (encapsula)
la información de la clase.
OBJETO
• Un objeto es un ejemplar concreto de una clase, como
por ejemplo el curso de metodología de la programación
es un curso concreto dentro de todos los tipos de
cursos que pueden existir. Un objeto pertenece a una
clase, por lo tanto dispondrá de los atributos (datos) y
operaciones (métodos) de la clase a la que pertenece.
• Tras ser instanciado, un objeto consta de los atributos de la
clase a la que pertenece, y puede recibir mensajes. Dicho
objeto determinará a qué método de su clase corresponde
dicho mensaje. Un objeto no podrá recibir mensajes
correspondientes a métodos de una clase a la que no
pertenezca. Por ejemplo:
MENSAJE
La siguiente figura muestra las tres partes que componen un
mensaje:
1. El objeto al cual se manda el mensaje (TuBicicleta).
2. El método o función miembro que debe ejecutar (CambiarDeMarcha).
3. Los parámetros que necesita ese método (Marcha)
HERENCIA
• Consideraremos la herencia como la transmisión de los
métodos y atributos de una clase a otra. Gracias a la
herencia se pueden establecer jerarquías entre clases.
Establecer una jerarquía es un proceso subjetivo.
MÉTODO
• Son las operaciones (acciones o funciones) que se
aplican sobre los objetos y que permiten crearlos,
cambiar su estado o consultar el valor de sus atributos.
• constituyen la secuencia de acciones que implementan
las operaciones sobre los objetos.
• puede producir un cambio en las propiedades del objeto.
• Para funciones se pueden usar cualquiera de estas dos
sintaxis:
<Modo de Acceso> Función <Nombre> [(Lista
Parámetros)]: <Descripción del Tipo de datos>
• Para acciones:
<Modo de Acceso> Acción <Nombre> [(Lista
Parámetros)] donde los parámetros son opcionales
ATRIBUTOS
• Características que aplican al objeto solo en el caso
en que él sea visible en pantalla por el usuario;
entonces sus atributos son el aspecto que refleja,
tanto en color, tamaño, posición, si está o no
habilitado.
PROPIEDAD O ATRIBUTO
• Contenedor de un tipo de datos asociados a un objeto
(o a una clase de objetos), que hace los datos visibles
desde fuera del objeto y esto se define como sus
características predeterminadas, y cuyo valor puede
ser alterado por la ejecución de algún método.
EVENTOS
• Son aquellas acciones mediante las cuales el objeto
reconoce que se está interactuando con él. De esta forma el
objeto se activa y responde al evento según lo programado
en su código.
• Es un suceso en el sistema (tal como una interacción del
usuario con la máquina, o un mensaje enviado por un
objeto). El sistema maneja el evento enviando el mensaje
adecuado al objeto pertinente. También se puede definir
como evento la reacción que puede desencadenar un objeto;
es decir, la acción que genera.
INSTANCIA
• Se llama instancia a todo objeto que derive de algún
otro. De esta forma, todos los objetos son instancias
de algún otro, menos la clase Object que es la madre
de todas.
ESTADO INTERNO
• Es una variable que se declara privada, que puede ser
únicamente accedida y alterada por un método del
objeto, y que se utiliza para indicar distintas
situaciones posibles para el objeto (o clase de
objetos). No es visible al programador que maneja una
instancia de la clase.
SOBRECARGA
• La sobrecarga consiste en poder crear un mismo
método tantas veces como se quiera, pero han de
tener diferentes "lista de argumentos”.
podemos crear un método:
public void unMetodo(){
//código
}
Y lo podemos sobrecargar de la
siguiente manera:
public void unMetodo(int x){
//código
}
Como veis, el método es el mismo, se llaman igual, pero
tienen diferente lista de argumentos. Estas distintas
versiones pueden estar en una misma clase o repartidos
entre esta y su "superclase".
UN MÉTODO SOBRECARGADO PUEDE TENER:
• Diferente tipo de retorno.
• Diferentes modificadores de acceso.
• Lanzar diferentes excepciones.
CLASES ABSTRACTAS
• Las clases abstractas, las cuales declaran con la palabra clave
abstract, no se pueden crear instancias. Sólo puede ser
utilizado como un super-clase para otras clases que amplían la
clase abstracta.
CARACTERÍSTICAS
LA ABSTRACCIÓN
• Por un lado nos permite referirnos a objetos para representar
la realidad, describiendo el problema en términos del
problema en lugar de en términos de la solución.
• La clave de la programación orientada a objetos está en
abstraer los métodos y los datos comunes a un conjunto de
objetos y agruparlos en una clase.
• Gracias a este nivel de abstracción, añadir o eliminar un
objeto nuevo supondrá muy poco esfuerzo.
ENCAPSULAMIENTO
• Se refiere a la capacidad de agrupar y condensar en un
entorno con límites bien-definidos distintos elementos.
Cuando hablamos de encapsulación en general siempre
nos referiremos a encapsulación abstracta. De manera
informal, primero generalizamos (la abstracción) y luego
decimos: la generalización está bien, pero dentro de un
cierto orden: hay que poner límites (la encapsulación), y
dentro de esos límites vamos a meter todo lo
relacionado con lo abstraído: no sólo datos, sino
también métodos, comportamientos, etc.
POLIMORFISMO
• Esta característica permite definir distintos
comportamientos para un método dependiendo de la clase
sobre la que se realice la implementación. En todo
momento tenemos un único medio de acceso, sin embargo
se podrá acceder a métodos distintos.
• El polimorfismo se puede establecer mediante la
sobrecarga de identificadores y operadores, la ligadura
dinámica y las funciones virtuales. El término sobrecarga
se refiere al uso del mismo identificador u operador en
distintos contextos y con distintos significados.
MODULARIDAD
• Es la propiedad que permite subdividir una aplicación en
partes más pequeñas (llamadas módulos), cada una de
las cuales debe ser tan independiente como sea posible
de la aplicación en sí y de las restantes partes. Estos
módulos se pueden compilar por separado, pero tienen
conexiones con otros módulos. Al igual que la
encapsulación, los lenguajes soportan la modularidad
de diversas formas.
PRINCIPIO DE OCULTACIÓN
• Cada objeto está aislado del exterior, es un módulo
natural, y cada tipo de objeto expone una "interfaz" a
otros objetos que especifican cómo pueden interactuar
con los objetos de la clase. El aislamiento protege a
las propiedades de un objeto contra su modificación
por quien no tenga derecho a acceder a ellas;
solamente los propios métodos internos del objeto
pueden acceder a su estado.
COHESIÓN
• Cohesión es “Es la medida de cuanto una entidad
(componente o clase) se encuentra especializada
en propósito único dentro de un sistema”.
INTERFACES
• Una interface se compone de “Un conjunto de
operaciones que caracterizan el comportamiento de
un elemento”. Todos los métodos definidos en una
interface son public abstract. En resumen, la interface
separa la aplicación y define la estructura, y este
concepto es muy útil en los casos donde se necesita la
aplicación para ser intercambiables.
ACOPLAMIENTO
• Mide el grado de relacionamiento de un módulo con los
demás. A menor acoplamiento, mejor: el módulo en
cuestión será más sencillo de diseñar, programar, probar y
mantener. En el diseño estructurado, se logra bajo
acoplamiento reduciendo las interacciones entre
procedimientos y funciones, reduciendo la cantidad y
complejidad de los parámetros y disminuyendo al mínimo
los parámetros por referencia y los efectos colaterales.
ASOCIACIÓN
• Es una relación entre dos clases. Permite que una instancia de
objeto de causar otro para llevar a cabo una acción en su
nombre. Asociación es el término más general que define la
relación entre dos clases, donde como la agregación y la
composición son relativamente especial.
Ejemplo: En este caso podemos decir que existe una asociación
entre StudentRegistrar y RecordManager o existe una relación
direccional de StudentRegistrar a RecordManager o
StudentRegistrar utilizar una RecordManager. Puesto que se
especifica explícitamente una dirección, en este caso, la clase del
controlador es la StudentRegistrar.
PROGRAMACIÓN ORIENTADA A
OBJETOS EN VISUAL BASIC
• Los objetos son el elemento central de la programación
en Visual Basic. Los formularios y controles son objetos.
Las bases de datos son objetos. Si ha usado Visual
Basic durante algún tiempo, o si ha trabajado con los
ejemplos de la documentación, ya han programado con
objetos, pero hay mucho más en lo que se refiere a
objetos de lo que ha visto hasta aquí.
• En los siguientes temas, verá lo fácil que resulta crear
objetos propios a partir de las clases que defina, así
como utilizar objetos para simplificar la creación de
código y aumentar su reutilización.
INTRODUCCIÓNA LOS OBJETOSEN
VISUALBASIC
• Un objeto es una estructura
que contiene la información y
los métodos que manipulan
los datos. Casi todas las
tareas realizadas en Visual
Basic están asociadas con
objetos. Si no tiene
experiencia en programación
orientada a objetos, los
siguientes términos y
conceptos le ayudarán a
comenzar.
CLASESY OBJETOS
En general, una clase es una
representación abstracta de
algo, mientras que un objeto es
un ejemplo utilizable de lo que
representa la clase. La única
excepción a esta regla la
constituyen los miembros de
clases compartidas, que
pueden utilizarse en instancias
de una clase y en variables de
objeto declaradas como tipo de
la clase.
CAMPOS, PROPIEDADES, MÉTODOS Y EVENTOS
• Los campos y propiedades representan información que contiene un objeto. Los
campos se parecen a las variables ya que se pueden leer y establecer
directamente. Por ejemplo, si tiene un objeto denominado "Car", podría
almacenar su color en un campo denominado "Color".
• Las propiedades se recuperan y establecen como los campos, pero se
implementan mediante los procedimientos propiedad Get y Set, que
proporcionan más control sobre la forma en que los valores se establecen o se
devuelven. El nivel de direccionamiento indirecto entre el valor que se va a
almacenar y los procedimientos que lo usan ayuda a aislar los datos y permite
validar valores antes de asignarlos o recuperarlos.
• Los métodos representan acciones que un objeto puede realizar.
ENCAPSULACIÓN, HERENCIAY POLIMORFISMO
• La encapsulación significa que un grupo de propiedades, métodos y
otros miembros relacionados se tratan como si de una sola unidad u
objeto se tratase. Los objetos pueden controlar cómo se cambian
propiedades o se ejecutan métodos.
• Herencia describe la posibilidad de crear nuevas clases basadas en
una clase existente. La nueva clase hereda todas las propiedades,
métodos y eventos de la clase base, y puede personalizarse con
propiedades y métodos adicionales.
• Polimorfismo significa que puede tener múltiples clases que se pueden
utilizar de forma intercambiable, si bien cada clase implementa las
mismas propiedades o los mismos métodos de maneras diferentes.
SOBRECARGA, REEMPLAZOY SOMBREADO
• Los miembros sobrecargados se utilizan para proporcionar diferentes
versiones de una propiedad o método que tienen el mismo nombre, pero
que aceptan un número diferente de parámetros, o parámetros con
diferentes tipos de datos.
• Las propiedades y métodos reemplazados se utilizan para reemplazar una
propiedad o métodos heredados que no son apropiados en una clase
derivada.
• Los miembros sombreados se utilizan para reemplazar localmente un
miembro que tiene un ámbito más amplio. Cualquier tipo puede sombrear
cualquier otro tipo.
GRACIAS

Más contenido relacionado

La actualidad más candente

Practicas prolog
Practicas prologPracticas prolog
Practicas prologmaxsp5566
 
Eclipse refactoring
Eclipse refactoringEclipse refactoring
Eclipse refactoringsrcid
 
Comparacion Java Swing y awt
Comparacion Java Swing y awtComparacion Java Swing y awt
Comparacion Java Swing y awtJessicavergara273
 
Elementos de programacion
Elementos de programacionElementos de programacion
Elementos de programacionAlma1009
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentesUlises Cruz
 
Tutorial eclipse
Tutorial eclipseTutorial eclipse
Tutorial eclipseJose Nava
 
Programación orientada a objetos presentacion
Programación    orientada    a objetos presentacionProgramación    orientada    a objetos presentacion
Programación orientada a objetos presentacionfranciscocain
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Giancarlo Aguilar
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventosMario Martinez Alvarez
 
Fundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del SoftwareFundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del SoftwareRichard J. Nuñez
 

La actualidad más candente (20)

P.O.O.
P.O.O.P.O.O.
P.O.O.
 
Conceptos poo (presentación1)
Conceptos poo (presentación1)Conceptos poo (presentación1)
Conceptos poo (presentación1)
 
METODOS Y MODELOS POO
METODOS Y MODELOS POOMETODOS Y MODELOS POO
METODOS Y MODELOS POO
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Practicas prolog
Practicas prologPracticas prolog
Practicas prolog
 
Eclipse refactoring
Eclipse refactoringEclipse refactoring
Eclipse refactoring
 
Comparacion Java Swing y awt
Comparacion Java Swing y awtComparacion Java Swing y awt
Comparacion Java Swing y awt
 
Elementos de programacion
Elementos de programacionElementos de programacion
Elementos de programacion
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentes
 
Tutorial eclipse
Tutorial eclipseTutorial eclipse
Tutorial eclipse
 
Jdbc
JdbcJdbc
Jdbc
 
Programación orientada a objetos presentacion
Programación    orientada    a objetos presentacionProgramación    orientada    a objetos presentacion
Programación orientada a objetos presentacion
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Clase4 poo-uml
Clase4 poo-umlClase4 poo-uml
Clase4 poo-uml
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Programación visual y orientada a eventos
Programación  visual y orientada a eventosProgramación  visual y orientada a eventos
Programación visual y orientada a eventos
 
Linea del tiempo POO
Linea del tiempo POOLinea del tiempo POO
Linea del tiempo POO
 
Fundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del SoftwareFundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del Software
 

Similar a POO: Introducción a los conceptos y características básicas de la Programación Orientada a Objetos

CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSCUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSLuis Miguel Gutierrez
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetosronnyme21
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalJose Angel Rodriguez
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetosAngel Laverde ID
 
Programacion Orientada A Objetos
Programacion Orientada A ObjetosProgramacion Orientada A Objetos
Programacion Orientada A Objetosguest160f88
 
Programacion Orientada A Objetos
Programacion Orientada A ObjetosProgramacion Orientada A Objetos
Programacion Orientada A Objetosguest160f88
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetoslindacajaperuiz
 
Trabajo de diceño y realizacion
Trabajo de diceño y realizacionTrabajo de diceño y realizacion
Trabajo de diceño y realizacionLolyPila
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con javaEudris Cabrera
 
Programacion orientada a objetos by Marcos Acosta
Programacion orientada a objetos by Marcos AcostaProgramacion orientada a objetos by Marcos Acosta
Programacion orientada a objetos by Marcos AcostaMarcos Acosta
 

Similar a POO: Introducción a los conceptos y características básicas de la Programación Orientada a Objetos (20)

Programacion orientada a_objetos
Programacion orientada a_objetosProgramacion orientada a_objetos
Programacion orientada a_objetos
 
Cspr
CsprCspr
Cspr
 
Cspr
CsprCspr
Cspr
 
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSCUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
FPJUCE - Capitulo2
FPJUCE - Capitulo2FPJUCE - Capitulo2
FPJUCE - Capitulo2
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos original
 
Asignacion2
Asignacion2Asignacion2
Asignacion2
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Poo
PooPoo
Poo
 
Programacion Orientada A Objetos
Programacion Orientada A ObjetosProgramacion Orientada A Objetos
Programacion Orientada A Objetos
 
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
 
Trabajo de diceño y realizacion
Trabajo de diceño y realizacionTrabajo de diceño y realizacion
Trabajo de diceño y realizacion
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Programacion orientada a objetos by Marcos Acosta
Programacion orientada a objetos by Marcos AcostaProgramacion orientada a objetos by Marcos Acosta
Programacion orientada a objetos by Marcos Acosta
 
Unidad1 y 2
Unidad1 y 2Unidad1 y 2
Unidad1 y 2
 

Más de GREINDER MARCHENA & LIZ VASQUEZ (20)

Aplicaciones
AplicacionesAplicaciones
Aplicaciones
 
Programación de aplicaciones móviles
Programación de aplicaciones móvilesProgramación de aplicaciones móviles
Programación de aplicaciones móviles
 
Java y xml
Java y xmlJava y xml
Java y xml
 
Android studio
Android studioAndroid studio
Android studio
 
Prepared statement
Prepared statementPrepared statement
Prepared statement
 
Control jtable con base de datos
Control jtable con base de datosControl jtable con base de datos
Control jtable con base de datos
 
Result set
Result setResult set
Result set
 
Statement
StatementStatement
Statement
 
Connection
ConnectionConnection
Connection
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Jdbc (Java Database Connectivity)
Jdbc (Java Database Connectivity)Jdbc (Java Database Connectivity)
Jdbc (Java Database Connectivity)
 
Objeto command
Objeto commandObjeto command
Objeto command
 
Objeto connection
Objeto connectionObjeto connection
Objeto connection
 
Espacio de nombres System.Data.SQLClient
Espacio de nombres System.Data.SQLClientEspacio de nombres System.Data.SQLClient
Espacio de nombres System.Data.SQLClient
 
ADO.NET
ADO.NETADO.NET
ADO.NET
 
GESTOR DE BASE DE DATOS
GESTOR DE BASE DE DATOSGESTOR DE BASE DE DATOS
GESTOR DE BASE DE DATOS
 
APLICACIONES N-CAPAS EN VISUAL NET
APLICACIONES N-CAPAS EN VISUAL NETAPLICACIONES N-CAPAS EN VISUAL NET
APLICACIONES N-CAPAS EN VISUAL NET
 
Vistas en SQL
Vistas en SQLVistas en SQL
Vistas en SQL
 
TABLAS Y TIPOS DE DATOS
TABLAS Y TIPOS DE DATOSTABLAS Y TIPOS DE DATOS
TABLAS Y TIPOS DE DATOS
 
Base de Datos en SQL
Base de Datos en SQLBase de Datos en SQL
Base de Datos en SQL
 

Último

CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 

Último (20)

CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 

POO: Introducción a los conceptos y características básicas de la Programación Orientada a Objetos

  • 1.
  • 2. DEFINICIÓN : • POO u (OOP según sus siglas en inglés): es un paradigma de programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora. Está basado en varias técnicas, incluyendo herencia, modularidad, polimorfismo, y encapsulamiento.
  • 4. CLASE • Una clase es una plantilla que define las variables y los métodos que son comunes para todos los objetos de un cierto tipo. Por lo tanto, para que pueda haber objetos, antes debe haberse definido las clases a las que pertenecerán dichos objetos.
  • 5. PARTE PÚBLICA • Describe a qué operaciones responden los objetos de una clase (cómo se comportan los objetos). En esta parte de la clase se declaran las cabeceras de los métodos de la clase que podrán ser "invocados" por los objetos. PARTE PRIVADA • Describe los datos de la clase y cómo las operaciones manipulan dichos datos. Esta parte de la clase es donde se oculta (encapsula) la información de la clase.
  • 6.
  • 7. OBJETO • Un objeto es un ejemplar concreto de una clase, como por ejemplo el curso de metodología de la programación es un curso concreto dentro de todos los tipos de cursos que pueden existir. Un objeto pertenece a una clase, por lo tanto dispondrá de los atributos (datos) y operaciones (métodos) de la clase a la que pertenece.
  • 8. • Tras ser instanciado, un objeto consta de los atributos de la clase a la que pertenece, y puede recibir mensajes. Dicho objeto determinará a qué método de su clase corresponde dicho mensaje. Un objeto no podrá recibir mensajes correspondientes a métodos de una clase a la que no pertenezca. Por ejemplo:
  • 10. La siguiente figura muestra las tres partes que componen un mensaje: 1. El objeto al cual se manda el mensaje (TuBicicleta). 2. El método o función miembro que debe ejecutar (CambiarDeMarcha). 3. Los parámetros que necesita ese método (Marcha)
  • 11. HERENCIA • Consideraremos la herencia como la transmisión de los métodos y atributos de una clase a otra. Gracias a la herencia se pueden establecer jerarquías entre clases. Establecer una jerarquía es un proceso subjetivo.
  • 12.
  • 13. MÉTODO • Son las operaciones (acciones o funciones) que se aplican sobre los objetos y que permiten crearlos, cambiar su estado o consultar el valor de sus atributos. • constituyen la secuencia de acciones que implementan las operaciones sobre los objetos. • puede producir un cambio en las propiedades del objeto.
  • 14. • Para funciones se pueden usar cualquiera de estas dos sintaxis: <Modo de Acceso> Función <Nombre> [(Lista Parámetros)]: <Descripción del Tipo de datos> • Para acciones: <Modo de Acceso> Acción <Nombre> [(Lista Parámetros)] donde los parámetros son opcionales
  • 15. ATRIBUTOS • Características que aplican al objeto solo en el caso en que él sea visible en pantalla por el usuario; entonces sus atributos son el aspecto que refleja, tanto en color, tamaño, posición, si está o no habilitado.
  • 16. PROPIEDAD O ATRIBUTO • Contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún método.
  • 17. EVENTOS • Son aquellas acciones mediante las cuales el objeto reconoce que se está interactuando con él. De esta forma el objeto se activa y responde al evento según lo programado en su código. • Es un suceso en el sistema (tal como una interacción del usuario con la máquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento la reacción que puede desencadenar un objeto; es decir, la acción que genera.
  • 18. INSTANCIA • Se llama instancia a todo objeto que derive de algún otro. De esta forma, todos los objetos son instancias de algún otro, menos la clase Object que es la madre de todas.
  • 19. ESTADO INTERNO • Es una variable que se declara privada, que puede ser únicamente accedida y alterada por un método del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos). No es visible al programador que maneja una instancia de la clase.
  • 20. SOBRECARGA • La sobrecarga consiste en poder crear un mismo método tantas veces como se quiera, pero han de tener diferentes "lista de argumentos”.
  • 21. podemos crear un método: public void unMetodo(){ //código } Y lo podemos sobrecargar de la siguiente manera: public void unMetodo(int x){ //código }
  • 22. Como veis, el método es el mismo, se llaman igual, pero tienen diferente lista de argumentos. Estas distintas versiones pueden estar en una misma clase o repartidos entre esta y su "superclase".
  • 23. UN MÉTODO SOBRECARGADO PUEDE TENER: • Diferente tipo de retorno. • Diferentes modificadores de acceso. • Lanzar diferentes excepciones.
  • 24. CLASES ABSTRACTAS • Las clases abstractas, las cuales declaran con la palabra clave abstract, no se pueden crear instancias. Sólo puede ser utilizado como un super-clase para otras clases que amplían la clase abstracta.
  • 26. LA ABSTRACCIÓN • Por un lado nos permite referirnos a objetos para representar la realidad, describiendo el problema en términos del problema en lugar de en términos de la solución. • La clave de la programación orientada a objetos está en abstraer los métodos y los datos comunes a un conjunto de objetos y agruparlos en una clase. • Gracias a este nivel de abstracción, añadir o eliminar un objeto nuevo supondrá muy poco esfuerzo.
  • 27. ENCAPSULAMIENTO • Se refiere a la capacidad de agrupar y condensar en un entorno con límites bien-definidos distintos elementos. Cuando hablamos de encapsulación en general siempre nos referiremos a encapsulación abstracta. De manera informal, primero generalizamos (la abstracción) y luego decimos: la generalización está bien, pero dentro de un cierto orden: hay que poner límites (la encapsulación), y dentro de esos límites vamos a meter todo lo relacionado con lo abstraído: no sólo datos, sino también métodos, comportamientos, etc.
  • 28. POLIMORFISMO • Esta característica permite definir distintos comportamientos para un método dependiendo de la clase sobre la que se realice la implementación. En todo momento tenemos un único medio de acceso, sin embargo se podrá acceder a métodos distintos. • El polimorfismo se puede establecer mediante la sobrecarga de identificadores y operadores, la ligadura dinámica y las funciones virtuales. El término sobrecarga se refiere al uso del mismo identificador u operador en distintos contextos y con distintos significados.
  • 29. MODULARIDAD • Es la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar por separado, pero tienen conexiones con otros módulos. Al igual que la encapsulación, los lenguajes soportan la modularidad de diversas formas.
  • 30. PRINCIPIO DE OCULTACIÓN • Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de objeto expone una "interfaz" a otros objetos que especifican cómo pueden interactuar con los objetos de la clase. El aislamiento protege a las propiedades de un objeto contra su modificación por quien no tenga derecho a acceder a ellas; solamente los propios métodos internos del objeto pueden acceder a su estado.
  • 31. COHESIÓN • Cohesión es “Es la medida de cuanto una entidad (componente o clase) se encuentra especializada en propósito único dentro de un sistema”.
  • 32. INTERFACES • Una interface se compone de “Un conjunto de operaciones que caracterizan el comportamiento de un elemento”. Todos los métodos definidos en una interface son public abstract. En resumen, la interface separa la aplicación y define la estructura, y este concepto es muy útil en los casos donde se necesita la aplicación para ser intercambiables.
  • 33. ACOPLAMIENTO • Mide el grado de relacionamiento de un módulo con los demás. A menor acoplamiento, mejor: el módulo en cuestión será más sencillo de diseñar, programar, probar y mantener. En el diseño estructurado, se logra bajo acoplamiento reduciendo las interacciones entre procedimientos y funciones, reduciendo la cantidad y complejidad de los parámetros y disminuyendo al mínimo los parámetros por referencia y los efectos colaterales.
  • 34. ASOCIACIÓN • Es una relación entre dos clases. Permite que una instancia de objeto de causar otro para llevar a cabo una acción en su nombre. Asociación es el término más general que define la relación entre dos clases, donde como la agregación y la composición son relativamente especial. Ejemplo: En este caso podemos decir que existe una asociación entre StudentRegistrar y RecordManager o existe una relación direccional de StudentRegistrar a RecordManager o StudentRegistrar utilizar una RecordManager. Puesto que se especifica explícitamente una dirección, en este caso, la clase del controlador es la StudentRegistrar.
  • 36. • Los objetos son el elemento central de la programación en Visual Basic. Los formularios y controles son objetos. Las bases de datos son objetos. Si ha usado Visual Basic durante algún tiempo, o si ha trabajado con los ejemplos de la documentación, ya han programado con objetos, pero hay mucho más en lo que se refiere a objetos de lo que ha visto hasta aquí. • En los siguientes temas, verá lo fácil que resulta crear objetos propios a partir de las clases que defina, así como utilizar objetos para simplificar la creación de código y aumentar su reutilización.
  • 37. INTRODUCCIÓNA LOS OBJETOSEN VISUALBASIC • Un objeto es una estructura que contiene la información y los métodos que manipulan los datos. Casi todas las tareas realizadas en Visual Basic están asociadas con objetos. Si no tiene experiencia en programación orientada a objetos, los siguientes términos y conceptos le ayudarán a comenzar. CLASESY OBJETOS En general, una clase es una representación abstracta de algo, mientras que un objeto es un ejemplo utilizable de lo que representa la clase. La única excepción a esta regla la constituyen los miembros de clases compartidas, que pueden utilizarse en instancias de una clase y en variables de objeto declaradas como tipo de la clase.
  • 38. CAMPOS, PROPIEDADES, MÉTODOS Y EVENTOS • Los campos y propiedades representan información que contiene un objeto. Los campos se parecen a las variables ya que se pueden leer y establecer directamente. Por ejemplo, si tiene un objeto denominado "Car", podría almacenar su color en un campo denominado "Color". • Las propiedades se recuperan y establecen como los campos, pero se implementan mediante los procedimientos propiedad Get y Set, que proporcionan más control sobre la forma en que los valores se establecen o se devuelven. El nivel de direccionamiento indirecto entre el valor que se va a almacenar y los procedimientos que lo usan ayuda a aislar los datos y permite validar valores antes de asignarlos o recuperarlos. • Los métodos representan acciones que un objeto puede realizar.
  • 39. ENCAPSULACIÓN, HERENCIAY POLIMORFISMO • La encapsulación significa que un grupo de propiedades, métodos y otros miembros relacionados se tratan como si de una sola unidad u objeto se tratase. Los objetos pueden controlar cómo se cambian propiedades o se ejecutan métodos. • Herencia describe la posibilidad de crear nuevas clases basadas en una clase existente. La nueva clase hereda todas las propiedades, métodos y eventos de la clase base, y puede personalizarse con propiedades y métodos adicionales. • Polimorfismo significa que puede tener múltiples clases que se pueden utilizar de forma intercambiable, si bien cada clase implementa las mismas propiedades o los mismos métodos de maneras diferentes.
  • 40. SOBRECARGA, REEMPLAZOY SOMBREADO • Los miembros sobrecargados se utilizan para proporcionar diferentes versiones de una propiedad o método que tienen el mismo nombre, pero que aceptan un número diferente de parámetros, o parámetros con diferentes tipos de datos. • Las propiedades y métodos reemplazados se utilizan para reemplazar una propiedad o métodos heredados que no son apropiados en una clase derivada. • Los miembros sombreados se utilizan para reemplazar localmente un miembro que tiene un ámbito más amplio. Cualquier tipo puede sombrear cualquier otro tipo.