Está en la página 1de 6

UNIVERSIDAD DE ORIENTE

NÚCLEO DE MONAGAS
ESCUELA DE INGENIERÍA Y CIENCIAS APLICADAS
DEPARTAMENTO DE INGENIERÍA DE SISTEMAS
OBJETOS Y ABSTRACCIÓN DE DATOS

ENSAYO: OBJETOS Y
ABSTRACCIÓN DE DATOS

PROFESOR: ESTUDIANTE:

Frank Díaz Alexander Díaz. C.I: 26833748

Sección 01

Maturín, marzo de 2021


ALGORITMOS, PROGRAMACIÓN ORIENTADA A OBJETOS Y
ABSTRACCIÓN DE DATOS.

Autor: Alexander Díaz.

Un algoritmo no es más que una serie de pasos que deben seguirse para
ejecutar una acción: esto de manera general es aplicable a todo aspecto de la
vida. Si, por ejemplo, una persona decide hacer un jugo de limón,
inconscientemente va a ejecutar una serie de pasos específicos y ordenados
para lograr su objetivo (cortar el limón, exprimirlo, etcétera), es decir, seguir un
algoritmo. Si, por otra parte, hubiera que dar indicaciones a un robot para hacer
el mismo jugo, resultaría necesario especificar cada paso en un algoritmo preciso
y ordenado que el robot entienda; es decir, a partir de una instrucción secuencial
y una información dada, el robot responderá… entrada, proceso y salida, esto
es, en sí, la definición de un algoritmo.

En materia tecnológica, los algoritmos son importantes para la creación


de los programas de un computador. Estos, acompañados de un lenguaje
establecido de programación (de alto nivel), son los que permiten que el
ordenador comprenda y ejecute las instrucciones y operaciones brindadas por el
programador. Entretanto, las características principales de los algoritmos son,
primeramente, que estos siempre tienen final (son finitos), deben ser lo más
efectivos posibles y detallar bien el orden secuencial de la información; y, por
último, ser unívocos puesto que, al aplicarse reiteradamente a los mismos datos
de entrada, el resultado siempre será el mismo.

Como ya se ha mencionado implícitamente, el término “programador”


refiere simplemente a toda aquella persona que se encarga de realizar
programas computacionales. Pero, ¿qué significa la programación en sí? Pues
este proceso es una comunicación entre el humano y la máquina; es el diseño,
construcción y escritura de códigos que contienen los algoritmos necesarios para
que la máquina adquiera la información y la ejecute. Cuando se habla de
códigos, se refiere a que el humano debe brindar la información en un idioma
que el ordenador pueda asimilar. Estos idiomas, sencillamente, son los lenguajes
de programación.
El programador, en consecuencia, debe manejar los lenguajes de
programación (o dominar el lenguaje que mejor se adapte a sus necesidades),
tener una visión lógica hacia los problemas y debe estructurar sus códigos según
su conocimiento, perspectiva y según un estilo propio del mismo lenguaje. Estos
estilos o visiones ya prestablecidos para cada lenguaje son los que determinan
los métodos y herramientas que el programador utilizará para la construcción de
sus códigos, se denominan “paradigmas de programación”.

Existen muchos tipos de paradigmas, entre los más importantes o


utilizados están: el Imperativo, declarativo, estructurado, orientado a objetos,
funcional y lógico. En principio, los paradigmas imperativos y declarativos son
mutuamente excluyentes, ya que en el paradigma imperativo el programador
indica qué debe hacer el programa, detallando cada uno de los pasos e
instrucciones que la máquina debe leer para realizarlo, mientras que en el
declarativo sólo se indica lo que se va a hacer, sin necesidad de codificar cómo.

En el paradigma estructurado, como su nombre lo indica, el código se


segmenta en bloques que pueden comunicarse entre sí, estructuras que
mantienen el orden de las operaciones en forma secuencial; esto otorga una
mejor comprensión de códigos y es la forma más sencilla de programar. Sin
embargo, cuando el código es muy extenso y complejo, no resulta tan factible
este paradigma, pues, conviene el orientado a objetos, el cual se basa en el
encapsulamiento de estados y operaciones en objetos, los cuales pueden
comunicarse entre sí y poseer propiedades en común. El paradigma orientado a
objetos es uno de los paradigmas más populares actualmente gracias a su
capacidad para sintetizar códigos complejos y extensos.

Por otro lado, el paradigma funcional se basa en la programación en forma


de ecuaciones matemáticas, funciones que se relacionan entre sí. Mientras que
el paradigma lógico se basa en la definición de reglas lógicas destinadas a la
resolución de problemas. Estos estilos de programación no son tan populares
como el estructurado o el orientado a objetos, pero existen lenguajes en los que
exclusivamente se manejan estos paradigmas y pueden brindar soluciones a
problemas de manera eficiente
Enfatizando un poco en el paradigma orientado a objetos, se tiene que
este paradigma expresa un programa como un conjunto de objetos que
colaboran entre ellos para realizar tareas. Estos objetos no son más que tipos de
datos abstractos a los cuales se les añaden propiedades de la reutilización de
códigos. Todo objeto contiene toda la información que permite definirlo e
identificarlo frente a otros objetos; posee datos y funciones, los cuales en la
programación se conocen como atributos y métodos, respectivamente.

Las características de la programación orientada a objetos señalan un


proceso de abstracción en la que se denotan los principales rasgos de un objeto
y se extrae su comportamiento. Este proceso permite identificar y seleccionar las
características esenciales de una entidad, para “convertirlas” en clases de
objetos. Luego, el encapsulamiento indica que se reúnen todos los elementos
pertenecientes a la misma entidad en un mismo nivel de abstracción, lo que
permite aumentar el agrupamiento de los componentes del sistema y proteger a
los datos.

Otra característica interesante de la programación orientada a objetos es


la modularidad que permite la subdivisión de las aplicaciones en módulos más
pequeños, los cuales tienen independencia respecto de la aplicación y las otras
partes y por ende pueden, aun teniendo conexiones con otros módulos, compilar
por separado. Entretanto, el principio de ocultación indica que el aislamiento
protege las propiedades de un objeto contra su modificación, lo que asegura que
no se verá afectado por otros objetos externos de manera inesperada.

El polimorfismo, por su parte, explica que, si se les da la misma orden a


diferentes objetos (que pueden tener el mismo nombre), cada uno la ejecutará a
su forma, es decir, los comportamientos serán distintos, porque los objetos son
distintos. Mientras que la herencia, haciendo honor a su nombre, refiere a que
los objetos pueden heredar el comportamiento de las clases a las cuales ellos
pertenecen. La herencia nos permite crear nuevas clases a partir de otras. Esto
significa que las clases dentro de un programa no están completamente aisladas
y se pueden clasificar jerárquicamente como superclases y subclases. Con lo
que una clase heredada de otra clase mayor, además de poseer sus atributos y
funcionalidad propia, contiene también los de su clase padre.
Todas estas características propias de la programación orientada a
objetos son las que determinarán el rumbo del programa que la persona decida
crear. En consecuencia, para que un individuo pueda programar en cualquier
lenguaje con el paradigma orientado a objetos, este debe dominar todos estos
conceptos fundamentales, ya que estos superan y amplían algunos ya conocidos
de la programación tradicional.

Entre los lenguajes que más utilizan el paradigma orientado a objetos,


actualmente son el C++, Objective C, Java, Visual Basic, PHP, Python, entre
otros. Aunque, sin embargo, los lenguajes Java y C++ son los que mejor se
adaptan a las características de este paradigma. Se utiliza tanto para la
resolución de problemas simples como también para el diseño de estructuras y
base de datos complejas.

Ahora, bien, se dice que la abstracción (característica de la POO) es el


proceso más imprescindible para la programación a objetos. A grandes rasgos,
la abstracción se puede definir como la operación intelectual de separar las
cualidades de “algo” para considerarlas aisladamente y así poder analizar ese
“algo” con una visión abstracta. También se puede decir que cuando se abstrae
un objeto, se “ignora” la parte de este que no resulta útil o simplemente es
irrelevante para el estudiador. En la programación, el proceso de abstracción es
el principio que permite el diseño de las estructuras de datos. Existen tres tipos
de abstracción: La abstracción funcional, iterativa y de datos.

La abstracción de datos es la técnica que consiste en la representación


de las características primordiales de una estructura de datos, obviando algunos
detalles específicos relacionados con su implementación. Esta permite añadir
nuevos tipos de datos a la máquina virtual definida por el lenguaje de
programación y un conjunto de operaciones para manipular los objetos de los
nuevos tipos. Este tipo de abstracción maneja los llamados datos abstractos, que
son los que definen los valores y las operaciones que se harán sobre ellos. Los
objetos, por ejemplo, son esencialmente tipos de datos abstractos en los que se
encapsula la información junto con los métodos para manipularla.
Por otra parte, en el proceso de encapsulamiento se reúnen o agrupan los
atributos (Sean variables o constantes) y métodos en una clase (al mismo nivel
de abstracción). Cada uno de estos objetos está aislado del exterior y protegido
contra su modificación por quien no tenga derecho de acceder a estos. Por lo
que, para cambiar el estado del objeto, sólo se puede hacer mediante las
opciones definidas para ese objeto.

Es por esto que existe el encapsulamiento en tres niveles diferentes: El


público, que es el nivel de más baja protección en la cual funciones externas
pueden acceder a los datos o métodos de una clase. El protegido, en el cual el
acceso de restringe solo a las subclases; y el privado, que es el nivel más alto
de protección de datos, en el que el acceso se restringe únicamente a los
métodos de esa misma clase.

Todos estos conceptos, cuando nunca se ha programado resultan muy


complejos de asimilar, por lo cual lo más indicado es manejar los paradigmas
más sencillos y luego aplicar las definiciones complejas a casos cotidianos.
Como es el caso, por ejemplo, de cuando se intenta resaltar las cualidades
físicas de un ser humano y se toman las primordiales (color de ojos, tamaño,
color de piel, peso) se ejecuta un proceso de abstracción en la cual se toma en
cuenta lo indispensable y se aísla del resto de información. Otro ejemplo es, para
entendimiento de la herencia en la programación, cuando genéticamente un ser
humano adquiere algunas características de su progenitor; a pesar de que
hereda alguna información, contiene por su parte la suya.

Y, de esa misma forma se pueden desglosar muchos más ejemplos. El


paradigma orientado a objetos es sumamente importante para el desarrollo de
aplicaciones y programas, por lo que su estudio e implementación cada vez toma
más fuerza en el mundo actual.

También podría gustarte