REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA
LA EDUCACIÓN UNIVERSITARIA
INSTITUTO UNIVERSITARIO POLITÉCNICO
“SANTIAGO MARIÑO”
EXTENSIÓN COL - SEDE CIUDAD OJEDA
Programación Orientada a Objetos (POO)
Ciudad Ojeda, Octubre 2022
Autor: Janniel Urdaneta
CI: 26417707
Sección A
Ing. en sistemas
#47
Programación Orientada a Objetos
(POO)
Concepto
Se define como un paradigma de la
programación, una manera de programar
específica, donde se organiza el código en
unidades denominadas clases, de las
cuales se crean objetos que se relacionan
entre sí para conseguir los objetivos de las
aplicaciones.
Características
Identidad
Estado
Cada objeto debe ser distinguido y ello debe poder demostrarse
mediante pruebas. Las pruebas is e is not existen para este fin.
Cada objeto debe ser capaz de almacenar el estado. Para este
fin, existen atributos, tales como variables de instancias y
campos.
Comportamiento Cada objeto debe ser capaz de manipular su estado. Para este fin
existen métodos.
Creación de objetos basada en
clases
Las clases son plantillas para la creación de objetos. Los objetos son
estructuras de datos con el comportamiento asociado.
Herencia con polimorfismo Python da soporte a la herencia individual y múltiple. Todos los métodos de instancias
de Python son polimórficos y se pueden alterar temporalmente mediante subclases.
Encapsulación con
ocultación de datos
Python permite ocultar los atributos. Cuando se ocultan los atributos, se puede acceder a los
mismos desde fuera de la clase únicamente mediante los métodos de la clase.
Principios de la Programación Orientada a Objetos
Encapsulación
Contiene toda la
información importante de
un objeto dentro del
mismo y solo expone la
información seleccionada
al mundo exterior.
Abstracción
Es cuando el usuario
interactúa solo con los
atributos y métodos
seleccionados de un objeto,
utilizando herramientas
simplificadas de alto nivel
para acceder a un objeto
complejo.
Herencia
Define relaciones
jerárquicas entre
clases, de forma que
atributos y métodos
comunes puedan ser
reutilizados.
Polimorfismo
Consiste en diseñar
objetos para compartir
comportamientos, lo
que nos permite
procesar objetos de
diferentes maneras.
Ejemplos
• Atributos: Número de la tarjeta, titular, balance, fecha de
caducidad, pin, entidad emisora, estado (activa o no), entre
otros.
• Métodos: Activar, pagar, renovar, anular.
• Las cadenas tienen un método upper que convierte la
cadena en mayúsculas. Para aplicar este método a la
cadena c se utiliza la instrucción c.upper().
>>> c = 'Python'
>>> print(c.upper()) # Llamada al método upper del objeto c
(cadena) PYTHON
Tipos de Programacion Orientada a Objetos
Basada en clases Basada en prototipos Basada en estructuras
Es la más ampliamente usada por
los lenguajes de programación
orientada a objetos. Por ejemplo
es usada por Java, C++ y C#. Se
basa en crear una estructura
molde llamada clase donde se
especifican los campos y métodos
que tendrán nuestros objetos.
Es soportado en Javascript, Python y Ruby.
No hay clases, solo hay objetos. El
mecanismo para la reutilización está dado
por la clonación de objetos. Se crean
directamente los objetos y cuando se quiere
generar otro con la misma estructura se usa
clonación.
Soportado por Go, Rust, Nim y algunos
otros lenguajes compilados. Este enfoque
está basado en la construcción de tipos
definidos por el usuario (struct type),
llamados estructuras con sus respectivas
propiedades o atributos y se le añade una
variable de tipo puntero a las funciones o
métodos de esa estructura.
Lenguajes de programación orientados a objetos
Java
JavaScript
Python
Visual Basic .NET
Ruby
Scala
PHP
C++

Actividad 1 PNN2 Mapa Conceptual-Janniel Urdaneta.pptx

  • 1.
    REPÚBLICA BOLIVARIANA DEVENEZUELA MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN UNIVERSITARIA INSTITUTO UNIVERSITARIO POLITÉCNICO “SANTIAGO MARIÑO” EXTENSIÓN COL - SEDE CIUDAD OJEDA Programación Orientada a Objetos (POO) Ciudad Ojeda, Octubre 2022 Autor: Janniel Urdaneta CI: 26417707 Sección A Ing. en sistemas #47
  • 2.
    Programación Orientada aObjetos (POO) Concepto Se define como un paradigma de la programación, una manera de programar específica, donde se organiza el código en unidades denominadas clases, de las cuales se crean objetos que se relacionan entre sí para conseguir los objetivos de las aplicaciones. Características Identidad Estado Cada objeto debe ser distinguido y ello debe poder demostrarse mediante pruebas. Las pruebas is e is not existen para este fin. Cada objeto debe ser capaz de almacenar el estado. Para este fin, existen atributos, tales como variables de instancias y campos. Comportamiento Cada objeto debe ser capaz de manipular su estado. Para este fin existen métodos. Creación de objetos basada en clases Las clases son plantillas para la creación de objetos. Los objetos son estructuras de datos con el comportamiento asociado. Herencia con polimorfismo Python da soporte a la herencia individual y múltiple. Todos los métodos de instancias de Python son polimórficos y se pueden alterar temporalmente mediante subclases. Encapsulación con ocultación de datos Python permite ocultar los atributos. Cuando se ocultan los atributos, se puede acceder a los mismos desde fuera de la clase únicamente mediante los métodos de la clase. Principios de la Programación Orientada a Objetos Encapsulación Contiene toda la información importante de un objeto dentro del mismo y solo expone la información seleccionada al mundo exterior. Abstracción Es cuando el usuario interactúa solo con los atributos y métodos seleccionados de un objeto, utilizando herramientas simplificadas de alto nivel para acceder a un objeto complejo. Herencia Define relaciones jerárquicas entre clases, de forma que atributos y métodos comunes puedan ser reutilizados. Polimorfismo Consiste en diseñar objetos para compartir comportamientos, lo que nos permite procesar objetos de diferentes maneras. Ejemplos • Atributos: Número de la tarjeta, titular, balance, fecha de caducidad, pin, entidad emisora, estado (activa o no), entre otros. • Métodos: Activar, pagar, renovar, anular. • Las cadenas tienen un método upper que convierte la cadena en mayúsculas. Para aplicar este método a la cadena c se utiliza la instrucción c.upper(). >>> c = 'Python' >>> print(c.upper()) # Llamada al método upper del objeto c (cadena) PYTHON
  • 3.
    Tipos de ProgramacionOrientada a Objetos Basada en clases Basada en prototipos Basada en estructuras Es la más ampliamente usada por los lenguajes de programación orientada a objetos. Por ejemplo es usada por Java, C++ y C#. Se basa en crear una estructura molde llamada clase donde se especifican los campos y métodos que tendrán nuestros objetos. Es soportado en Javascript, Python y Ruby. No hay clases, solo hay objetos. El mecanismo para la reutilización está dado por la clonación de objetos. Se crean directamente los objetos y cuando se quiere generar otro con la misma estructura se usa clonación. Soportado por Go, Rust, Nim y algunos otros lenguajes compilados. Este enfoque está basado en la construcción de tipos definidos por el usuario (struct type), llamados estructuras con sus respectivas propiedades o atributos y se le añade una variable de tipo puntero a las funciones o métodos de esa estructura. Lenguajes de programación orientados a objetos Java JavaScript Python Visual Basic .NET Ruby Scala PHP C++