Está en la página 1de 11

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Educación

Universidad Nororiental Privada Gran Mariscal de Ayacucho

Núcleo Bolívar

Ingeniería en Informática

Lenguajes de Programación

Programación Orientada a Objetos


(POO)

Profesor: Alumno:

Ing. Vicenzo Mascia Jesús Alexis Díaz Pérez

C.I: 27.255.236

Ciudad Bolívar, 25 de Abril de 2021


Índice

Pág.

Introducción

2.1 Importancia de la Programación orientada a objetos 3

2.2 Características

2.2.1 Herencia 4

2.2.2 Polimorfismo 4

2.2.3 Clase Abstracta y Subclases 4

2.2.4 Métodos 5

2.2.5 Encapsulamiento 5

2.2.6 Lenguajes Representativos 5

2.3 Manejo de interfaz Grafica 6

2.4 Máquinas Virtuales 7

Conclusión 8

Bibliografía 9

1
Introducción

La programación orientada a objetos es una manera de ver la programación de una


forma más natural con respecto a la mente humana y su lógica común por eso se basa
en atributos que podemos ver en objetos físicos reales, que se llevan a la programación
y se abstraen a un código que forma parte de una plantilla que llamamos clase y que
tiene atributos que son características en común de una serie de objetos como por
ejemplo un vehículo, que tiene ruedas, ventanas, asientos, estos se transforman en
variables y a partir de aquí se crean distintas clases que proceden de esa misma y
pueden decirte que determinado modelo de vehículo tiene 6 asientos o 6 ruedas,
especificando ya el modelo y función del mismo, por todas estas características se le
llama Programación orientada a objetos, y más adelante se profundizara y se definirá
cada parte de la misma.

2
2.1 Importancia de la programación orientada a objetos

La programación orientada a objetos, es un paradigma de la programación, es


importante ya que nos permite realizar un programa, con un enfoque que cambia la
forma lineal en la que se programa normalmente en otros paradigmas, esta nos permite
programar con varias características en mente como clases, herencia, polimorfismo,
encapsulamiento entre otras que veremos más adelante, que básicamente nos
permiten tratar a los objetos de nuestro programa dándoles características que les
daríamos a simple vista en el mundo real, es decir, creamos un objeto y le damos
atributos, por ejemplo, una camisa, esta tiene un material, una talla, y una marca o
modelo. Si nos fijamos son los mismos que usamos en la vida real por ejemplo en una
tienda a la hora de comprar una, esto quiere decir que en un programa para realizar un
chequeo de inventario podríamos programar una clase teniendo en mente el objeto que
es esta camisa tal y como lo hacemos en la vida real, esto es parte de lo que se conoce
como abstracción, esta misma clase nos sirve no solo para representar una camisa
sino todas, ya que mediante la herencia podemos modificar las características de cada
una según las diferencias que tengan, facilitando muchísimo, el trabajo de programar y
acortando y abaratando así el procedimiento, también disponemos del
encapsulamiento que nos permite, tener menos errores a la hora de programar alguna
clase en grupo en el proceso de creación del programa. Si vemos las ventajas que
tiene podemos concluir que es muy importante ya que, a la hora de crear aplicaciones
móviles, como chats, o también en videojuegos en lo que principalmente lo que se ve
en pantalla son objetos con los que el usuario interactúa directa o indirectamente, nos
facilita el proceso lógico a la hora de crearlos tratando cada uno de sus objetos en el
código de la manera más parecida a la que lo haríamos en la vida real, con una lógica
común. También gracias al enfoque en el diseño que tiene fue muy usado por las
primeras páginas web, junto con la interfaz gráfica que propuso el sistema operativo
Windows en sus inicios. Se puede decir que gracias a las facilidades que brinda y a las
circunstancias del mundo digital tomo una gran importancia y relevancia en la
programación y, en el mundo y las personas.

3
2.2 Características de la programación orientada a objetos (POO)

2.2.1 Herencia

La herencia es una característica que permite heredar los atributos y métodos de una
clase llamada padre a otras clases que llamaremos subclases, así utilizándola para
crear objetos parecidos o de esa misma clase con distintos valores o características en
los atributos, esta es una de las principales características del paradigma de POO.

2.2.2 Polimorfismo

El polimorfismo consiste en modificar la función el método de una clase heredada o


subclases para así, hacer que se adapte al uso que se le dará, esta conserva nombre y
atributos, pero su método cambia por así decirlo.

2.2.3 Clase abstracta y subclases

La clase abstracta, es una clase que no es un objeto como tal, pero tiene atributos y
métodos en común que permiten crear otras clases. Es decir, puede representar por
ejemplo a un animal, pero no especificar cuál es, creando la clase abstracta llamada
¨Animal¨ por ejemplo un gato y un perro, tienen nombre, patas, uñas, hocico, cola, color
y sonido como atributos, son elementos en común, esta clase puede usarse para
representar ambos animales sin problema solamente creando dos subclases y
dándoles valores distintos a su nombre y atributos, que represente a cada animal en
este caso el gato y el perro. Es la clase padre por así decirlo.

Las subclases son clases que, si representan un objeto en específico y heredan


atributos de una clase padre o abstracta, estas pueden también usar el polimorfismo
para cambiar la funcionalidad en su método que hereda de la clase padre, y pueden ser
encapsuladas para que otras clases no tengan acceso a sus atributos declarando los
mismos en privado. Esta es una de las ventajas de la POO, que protegen estos
atributos de ser modificados por otras clases y facilitan el trabajo de programación en
equipo.

4
2.2.4 Métodos

Los métodos describen como se comportan los objetos de una clase, estos son las
funciones que pueden realizar los objetos de dicha clase. Se definen de la misma forma
que las funciones normales, pero deben declararse dentro de la clase y su primer
argumento siempre referencia a la instancia que la llama, de esta forma se afirma que
los métodos son funciones, pero adjuntadas a un objeto.

2.2.5 Encapsulamiento

El encapsulamiento consiste en declarar los atributos de una clase de manera privada,


mediante modificadores de acceso para que así solo puedan ser modificadas desde la
clase principal. Evita errores a la hora de programar en grupo protegiendo las variables
de las clases de ser modificadas por otras clases. Para acceder dichas variables se
utilizan las funciones setter que introducen valores en los atributos y getter para
obtenerlos.

2.2.6 Lenguajes representativos de la POO

Los principales lenguajes de programación orientados a objetos son:

 Ada
 C++
 C#
 VB.NET
 Clarion
 Delphi
 Eiffel
 Java
 Lexico
 Objective-C
 Ocaml
 Oz

5
 PHP
 PowerBuilder
 Python
 Ruby
 Smalltalk.

No todos estos lenguajes de programación orientada a objetos son específicamente


orientados a objetos. Sino que algunos de ellos se le han añadido extensiones
orientadas a objetos.

2.3 Manejo de Interfaz Gráfica de Usuario (GUI)

Actualmente la mayoría de sistemas operativos y programas tienen una interfaz gráfica


básica o más compleja, de hecho hasta se puede manejar a través de gestos táctiles y
visuales. Pero esto no siempre fue así de hecho en gran parte de la historia de la
computación hasta acá, los programas y sistemas operativos se manejaban a través de
comandos que servían para funciones muy específicas, de hecho una de las
desventajas de la misma es que se pierde en parte esa capacidad que tienen los
comandos para controlar funciones específicas de un sistema o comando, pero gracias
al desarrollo de del manejo de las mismas, se ha logrado que cualquier persona pueda,
manejar dispositivos y su sistema operativo y apps sin conocimiento previo sobre estos,
esto mediante estudios de gestos de las personas e inclusión de símbolos que son un
estándar en el mundo actual. En si la GUI es una interfaz entre la persona y la
máquina, el objetivo de esta interfaz gráfica es representar el código del backend de un
sistema de la forma más clara posible para el usuario para simplificarle las tareas
diarias. Para esto, son muy importantes los iconos y las imágenes, ya que solo estos
permiten una aplicación universal e independiente del texto. Es una interfaz de usuario
que permite a los usuarios comunicarse con el ordenador. Suele estar basada en la
interacción a través del ratón y el teclado aunque el control a través de gestos es cada
vez más común, al mover el ratón, el puntero se desplaza en la pantalla. La señal del
dispositivo se transmite al ordenador, que luego la traduce en un movimiento
equivalente en la pantalla. Por ejemplo, si un usuario hace clic en un determinado icono
de programa en el menú, se ejecuta la instrucción correspondiente y se abre el

6
programa. La GUI es, por lo tanto, una especie de traductor en la comunicación entre el
humano y la máquina.

2.2.4 Máquina virtual

Es una herramienta que nos permite emular un sistema operativo u entorno de software
que solo puede trabajar en hardware dedicado, que la máquina virtual emula para así
poder ejecutarlos. Nos permite probar sistemas operativos y programas que fueron
diseñados para un hardware especifico distinto al de nuestro computador, es decir,
programas de sistemas de Smartphones como Android, emuladores de consolas, y uno
de sus usos más frecuentes, poder tener un sistema operativo ya sea Windows, Linux o
hasta Mac completo, ejecutándose en la comodidad de una ventana dentro del nuestro,
lo que nos permite realizar pruebas de todo tipo y usar nuestras aplicaciones
desarrolladas para eso entornos de software y como afectan al funcionamiento de ese
sistema. Sin la necesidad de tener el hardware dedicado que necesitarían en un
principio facilitándonos así muchísimo la tarea de desarrollar o probar programas que
solo funcionan en sistemas operativos distintos al que usamos nosotros de forma
económica y rápida.

7
Conclusión

2.1 Básicamente se trata de un paradigma de programación que nos permite crear


plantillas llamadas clases pensando en atributos en común de objetos con una lógica
más básica o del mundo real por así decirlo y así crear subclases que nos permitan
modificarlos para crear un objeto en específico más fácilmente a partir de las clases
padres o abstractas. Ahorrando un poco de trabajo y cambiando un poco la forma lineal
de programar que tienen otros paradigmas.

2.2 Las características de este paradigma definidas

2.2.1 La herencia nos permite usar las clases que son algo así como nuestras plantillas
y modificarlas para crear subclases con los mismos atributos y métodos en común.

2.2.2 El polimorfismo es una manera de llamar al cambio en la función del método de


una subclase con respecto a la clase padre o abstracta.

2.2.3 Las clases abstractas son en si una plantilla para el resto de clases llamadas
subclases que podemos crear de ellas a través de la herencia. Para poder ser
abstracta necesita tener atributos en común que no sean de un objeto en específico per
o que si sirvan para describir a uno y ser especificado en una subclase.

Las subclases son las clases que nos permiten especificar un objeto con los atributos
en común y el método que tiene una clase abstracta, de la cual los hereda

2.2.4 Método es la función principal de las clases abstractas y las subclases.

2.2.5 Encapsulamiento es la declaración privada de una variable atributo de una clase


impidiendo que otra clase acceda a ella directamente, y se puede modificar para crear
subclases a través de setters que introducen valores y getters que los presentan.

2.2.6 Aquí están todos los lenguajes adaptados o creados para programar en POO.
Entre los más conocidos Java y C++

8
2.3 Es básicamente el medio de comunicación del usuario con la máquina y viceversa.
Facilita el uso de muchos dispositivos digitales, para todas las personas.

2.4 Principalmente nos permiten emular un hardware dedicado que no poseemos para
ejecutar aplicaciones hechas para su sistema operativo y ese mismo hardware. Por eso
mismo pueden emular Android, una consola, y los sistemas operativos de computadora
dentro una ventana en nuestro sistema operativo.

9
Bibliografía

 Autor: Miguel Ángel Álvarez. Fecha: 11 de diciembre de 2019. ¿Qué es la


Programación Orientada a Objetos?
Enlace: https://desarrolloweb.com/articulos/499.php#:~:text=La%20programaci
%C3%B3n%20Orientada%20a%20objetos%20se%20define%20como%20un
%20paradigma,los%20objetivos%20de%20las%20aplicaciones.

 Autor: Angel Robledano. Fecha: 11 de junio de 2019. Que es la programación


orientada a objetos
Enlace:
https://openwebinars.net/blog/que-es-la-programacion-orientada-
objetos/#:~:text=Python%2C%20PHP%20y%20Ruby%20son,la%20programaci
%C3%B3n%20orientada%20a%20objetos).

 Autor: Desconocido. Fecha: Desconocida. Programación orientada a objetos


(POO) y UML
Enlace: https://informaticapc.com/poo/clases-abstractas.php

 Autor: BERTHOLD DAUM Fecha: 2003. Modeling Business Objects with


XML Schema
Enlace: https://www.sciencedirect.com/topics/computer-science/subclasses

 Autor: Desconocido. Fecha: 14 de septiembre de 2020. Que es una GUI


Enlace: https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/que-es-
una-gui/

 Autor: Roberto Adeva. Fecha: 7 de Abril de 2021. ¿Necesitas una maquina


virtual? Las mejores aplicaciones.
Enlace: https://www.adslzone.net/listas/mejores-programas/maquinas-virtuales/

10

También podría gustarte