0% encontró este documento útil (0 votos)
44 vistas13 páginas

Modulo I - PROGRAMACIÓN ORIENTADA A OBJETO

Este documento presenta el Módulo I de Programación Orientada a Objetos. Introduce conceptos fundamentales como clases, objetos, métodos y atributos. Explica características clave como abstracción, encapsulamiento e herencia. Finalmente, resume los antecedentes históricos y beneficios de la programación orientada a objetos.

Cargado por

Yoel Gutiérrez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
44 vistas13 páginas

Modulo I - PROGRAMACIÓN ORIENTADA A OBJETO

Este documento presenta el Módulo I de Programación Orientada a Objetos. Introduce conceptos fundamentales como clases, objetos, métodos y atributos. Explica características clave como abstracción, encapsulamiento e herencia. Finalmente, resume los antecedentes históricos y beneficios de la programación orientada a objetos.

Cargado por

Yoel Gutiérrez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 13

PROGRAMACIÓN DE

COMPUTADORAS I

MODULO I
PROGRAMACIÓN ORIENTADA A OBJETO
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

CONTENIDOS

Introducción ................................................................................................................................ 3
1.1 ANTECEDENTES ................................................................................................................. 3
1.2 CONCEPTOS FUNDAMENTALES ................................................................................ 4
1.3 CARACTERISTICAS DE LA POO ................................................................................ 7
1.4 ETAPAS EN LA SOLUCIÓN DE UN PROBLEMA POR COMPUTADORA
BAJO PARADIGMA ORIENTADO A OBJETO. .............................................................. 9
1.5. VENTAJAS DE LA POO ................................................................................................ 11
1.6. TIPOS DE ERRORES . ................................................................................................. 12
BIBLIOGRAFÍA ............................................................................................................................. 13

2
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

Introducción

Programación orientada a objetos (POO). Es un paradigma de


programación que usa objetos y sus interacciones, para diseñar
aplicaciones y programas informáticos. Está basado en varias técnicas,
incluyendo herencia, abstracción, polimorfismo y encapsulamiento. Su
uso se popularizó a principios de la década de los años 1990. En la
actualidad, existe variedad de lenguajes de programación que soportan
la orientación a objetos.

1.1 ANTECEDENTES

Los conceptos de la programación orientada a objetos tienen origen en


Simula desarrollado en 1967, un lenguaje diseñado para hacer
simulaciones, creado por Ole-Johan Dahl y Kristen Nygaard del Centro de
Cómputo Noruego en Oslo. En este centro, se trabajaba en simulaciones
de naves, que fueron confundidas por la explosión combinatoria de cómo
las diversas cualidades de diferentes naves podían afectar unas a las
otras. La idea ocurrió para agrupar los diversos tipos de naves en diversas
clases de objetos, siendo responsable cada clase de objetos de definir sus
propios datos y comportamientos. Fueron refinados más tarde en
Smalltalk, que fue desarrollado en Simula en Xerox PARC (cuya primera
versión fue escrita sobre Basic) pero diseñado para ser un sistema
completamente dinámico en el cual los objetos se podrían crear y
modificar "en marcha" (en tiempo de ejecución) en lugar de tener un
sistema basado en programas estáticos.
La programación orientada a objetos tomó posición como el estilo de
programación dominante a mediados de los años ochenta, en gran parte

3
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

debido a la influencia de C++, una extensión del lenguaje de


programación C. Su dominación fue consolidada gracias al auge de las
Interfaces gráficas de usuario, para las cuales la programación orientada
a objetos está particularmente bien adaptada. En este caso, se habla
también de programación dirigida por eventos.
Las características de orientación a objetos fueron agregadas a muchos
lenguajes existentes durante ese tiempo, incluyendo Ada, BASIC, Lisp,
Pascal, entre otros. La adición de estas características a los lenguajes que
no fueron diseñados inicialmente para ellas condujo a menudo a
problemas de compatibilidad y en la capacidad de mantenimiento del
código. Los lenguajes orientados a objetos "puros", por su parte, carecían
de las características de las cuales muchos programadores habían venido
a depender. Para saltar este obstáculo, se hicieron muchas tentativas
para crear nuevos lenguajes basados en métodos orientados a objetos,
pero permitiendo algunas características imperativas de maneras
"seguras". El Eiffel de Bertrand Meyer fue un temprano y moderadamente
acertado lenguaje con esos objetivos, pero ahora ha sido esencialmente
reemplazado por Java, en gran parte debido a la aparición de Internet, y
a la implementación de la máquina virtual de Java en la mayoría de los
navegadores. PHP en su versión 5 se ha modificado, soporta una
orientación completa a objetos, cumpliendo todas las características
propias de la orientación a objetos.

1.2 CONCEPTOS FUNDAMENTALES

La programación orientada a objetos es una forma de programar que trata


de encontrar una solución a estos problemas. Introduce nuevos
conceptos, que superan y amplían conceptos antiguos ya conocidos. Entre
ellos destacan los siguientes:

4
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

1.2.1 Clases

Definiciones de las propiedades y comportamiento de un tipo de objeto


concreto. La instanciación es la lectura de estas definiciones y la creación
de un objeto a partir de ellas.

1.2.2 Objeto

Entidad provista de un conjunto de propiedades o atributos (datos) y de


comportamiento o funcionalidad (métodos) los mismos que
consecuentemente reaccionan a eventos. Se corresponde con los objetos
reales del mundo que nos rodea, o a objetos internos del sistema (del
programa). Es una instancia a una clase.

1.2.3 Métodos
Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución
se desencadena tras la recepción de un "mensaje". Desde el punto de
vista del comportamiento, es lo que el objeto puede hacer. Un método
puede producir un cambio en las propiedades del objeto, o la generación
de un "evento" con un nuevo mensaje para otro objeto del sistema.

1.2.4 Atributos o Propiedades

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.

5
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

1.2.5 Evento
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, a la reacción que puede desencadenar un


objeto, es decir la acción que genera.

1.2.6 Mensaje

Una comunicación dirigida a un objeto, que le ordena que ejecute uno de


sus métodos con ciertos parámetros asociados al evento que lo generó.

6
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

1.3 CARACTERISTICAS DE LA POO

La potencia real de los objetos está en sus propiedades: abstracción,


herencia y polimorfismo.
1.2.1 . Abstracción de datos

Denota las características esenciales de un objeto, donde se capturan sus


comportamientos. Cada objeto en el sistema sirve como modelo de un
"agente" abstracto que puede realizar trabajo, informar y cambiar su
estado, y "comunicarse" con otros objetos en el sistema sin revelar cómo
se implementan estas características. Los procesos, las funciones o los
métodos pueden también ser abstraídos y cuando lo están, una variedad
de técnicas es requeridas para ampliar una abstracción. El proceso de
abstracción permite seleccionar las características relevantes dentro de

7
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

un conjunto e identificar comportamientos comunes para definir nuevos


tipos de entidades en el mundo real. La abstracción es clave en el proceso
de análisis y diseño orientado a objetos, ya que mediante ella podemos
llegar a armar un conjunto de clases que permitan modelar la realidad o
el problema que se quiere atacar.

1.2.2 Encapsulamiento

Significa reunir a todos los elementos que pueden considerarse


pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto
permite aumentar la cohesión de los componentes del sistema. Algunos
autores confunden este concepto con el principio de ocultación,
principalmente porque se suelen emplear conjuntamente.

1.2.3 Herencia

Las clases no están aisladas, sino que se relacionan entre sí, formando
una jerarquía de clasificación. Los objetos heredan las propiedades y el
comportamiento de todas las clases a las que pertenecen. La herencia
organiza y facilita el polimorfismo y el encapsulamiento permitiendo a los
objetos ser definidos y creados como tipos especializados de objetos
preexistentes. Estos pueden compartir (y extender) su comportamiento
sin tener que volver a implementarlo. Esto suele hacerse habitualmente
agrupando los objetos en clases y estas en árboles o enrejados que
reflejan un comportamiento común. Cuando un objeto hereda de más de
una clase se dice que hay herencia múltiple.

1.2.4 Polimorfismo

Comportamientos diferentes, asociados a objetos distintos, pueden


compartir el mismo nombre, al llamarlos por ese nombre se utilizará el
comportamiento correspondiente al objeto que se esté usando. O dicho

8
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

de otro modo, las referencias y las colecciones de objetos pueden


contener objetos de diferentes tipos, y la invocación de un
comportamiento en una referencia producirá el comportamiento correcto
para el tipo real del objeto referenciado. Cuando esto ocurre en "tiempo
de ejecución", esta última característica se llama asignación tardía o
asignación dinámica. Algunos lenguajes proporcionan medios más
estáticos (en "tiempo de compilación") de polimorfismo, tales como las
plantillas y la sobrecarga de operadores de C++.

1.4 ETAPAS EN LA SOLUCIÓN DE UN PROBLEMA POR


COMPUTADORA BAJO PARADIGMA ORIENTADO A
OBJETO.

Una vez que se plantea la solución específica, es preciso escribirla en un


lenguaje de programación – una notación intermedia entre el lenguaje
natural y el de la máquina – para desarrollar un programa que después
podrá ejecutarse en la computadora. Aunque el proceso de diseñar
programas es esencialmente un proceso creativo, se puede señalar una
serie de etapas o pasos comunes que generalmente deben seguir todos
los programadores. Las etapas para la solución de un problema a través
de una computadora de acuerdo con un enfoque orientado a objetos son:

✓ Definición del problema o dominio del problema


✓ Análisis orientado a objeto y diseño orientado a objeto
✓ Programación
✓ Documentación

9
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

1.4.1 Definición del problema o dominio del problema

Permite describir en forma narrativa o esquemática, de modo claro y


concreto, y en un lenguaje corriente el problema que ha de resolverse.
Presenta la procedencia y el aspecto de los datos a procesar, y describe
los resultados y como hay que presentarlos.

1.4.2. Análisis orientado a objetos y diseño orientado a objeto

El análisis orientado a objetos (AOO) se centra en la investigación del


problema, buscando identificar y describir los objetos en el dominio del
mismo. A partir de los objetos, que surgen como consecuencia de los
requisitos del problema, se definen sus atributos (datos), relaciones y
procedimientos (Método).

De la definición del problema debemos ahora poder identificar cuáles


serían las entidades (objetos), entradas, procesos y salidas que serán
requeridos por el análisis y diseño orientado a objeto. Esto se puede
obtener a través de las siguientes preguntas:

1. Cuál es el objeto a estudiar


2. Qué datos de entrada me proporciona el problema
3. Cuál es la información de salida
4. Qué proceso debo realizar para obtener la salida

1.4.3 Programación

Aunque esta etapa consiste en escribir un programa para resolver un


problema, hacerlo correctamente no es solo redactar código en un
lenguaje de programación especifico. El programa resultante debe ser
también claro, eficiente y fácil de modificar y usar. Esto implica una
disciplina y una metodología de programación, las cuales pueda
establecerse un estilo que garantice la calidad del producto.

10
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

La correcta utilización de esta etapa implica seleccionar técnicas que


permitan tener una visión más clara y detallada de los pasos lógicos a
seguir: construir el algoritmo, elaborar diagrama de flujo y /o seudocódigo
de acción, programar en un lenguaje de programación, etc...
Posteriormente se realiza una prueba de escritorio, a la que siguen la
codificación, compilación, ejecución y prueba del programa.

1.4.4 Documentación

La documentación de un programa consta de las descripciones de los


pasos a seguir en el proceso de resolución de un problema. La importancia
de la documentación debe ser destacada por su decisiva influencia en el
producto final. Los programas deficientemente documentados son difíciles
de leer, más difíciles de depurar y casi imposible de mantener y modificar.

La documentación de un programa se hace a través de líneas de


comentarios, y se incluyen tantas como sean necesarias para aclarar o
explicar el significado de las líneas de códigos que no son obvias ,
especialmente en lo que respecta a :

✓ Los identificadores y estructuras de datos declaradas


✓ Las estructuras de control
✓ Los métodos y sus parámetros

1.5. VENTAJAS DE LA POO

Las principales ventajas de la programación orientada a objetos son:


✓ Las herramientas POO nos ayudan a mejorar la complejidad
✓ Mejora la productividad debido a la reutilización de códigos
(Herencia)
✓ Mejora la seguridad y calidad
✓ Permite mejorar programas modulares más estructurados.

11
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

1.6. TIPOS DE ERRORES .

Durante el desarrollo de un programa es necesario poner especial cuidado


en evitar que el producto obtenido presente errores que lo hagan
inservible. Los errores se clasifican de la siguiente manera:

✓ Errores de compilación: Son los errores en tiempo de compilación o


errores sintácticos, se derivan del incumplimiento de las reglas
sintácticas del lenguaje de programación, como por ejemplo una
palabra reservada mal escrita o una instrucción incompleta.
✓ Errores De ejecución: Estos errores se producen por la instrucción
que la computadora puede comprender, pero no ejecutar, por
ejemplo, una división entre cero. En este caso se detiene la
ejecución y genera como salida un mensaje de error.
✓ Errores De Lógica: Consiste en resultados incorrectos obtenidos por
el programa. Son los más difíciles de detectar, ya que , el programa
funciona correctamente y no produce errores de compilación ni de
ejecución .

12
Licenciatura En Ingeniería Industrial Yamileth Quezada

Programación De Computadoras I Módulo I

BIBLIOGRAFÍA

1. Programación Orientada a Objeto. EcuRed. URL:


https://www.ecured.cu/Programaci%C3%B3n_Orientada_a_Objet
os#:~:text=Programaci%C3%B3n%20orientada%20a%20objetos
%20(POO).,%2C%20abstracci%C3%B3n%2C%20polimorfismo%2
0y%20encapsulamiento.

2. Olinda de Barraza, Felicita de Krol , Ludia de Meléndez , Mitzi de


Velázquez . Introducción a la Programación orientada a objeto.
Panamá : Universidad Tecnológica De Panamá .

13

También podría gustarte