POO Informe

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Defensa

Universidad Nacional Experimental de la Fuerza Armada

Barquisimeto, Edo Lara

INFORME

Integrante:

Carlos Sánchez, C.I 26.540.805

Prof, Steven Suarez

Materia: Lenguaje de Programación III

Sección: 2613-D1
INTRODUCCION

En los programas académicos de Ingeniería en Sistemas, habitualmente se comienza

enseñando programación utilizando técnicas de programación estructurada; pero la tendencia

mundial es hacia la orientación a objetos. La mayoría de los programas de Ciencias de la

Computación están incluyendo, desde los últimos 10 años, estos conceptos.

Veamos, Entonces ¿Qué es la Programación Estructurada y la Programación Orientado a

Objetos?

La programación orientada a objetos es un estilo que trata los datos como objetos con

atributos y métodos que pueden aplicarse a estos objetos y también ser heredados por otros

objetos. Java es un gran ejemplo de un lenguaje que emplea este concepto. Pero Java es un

lenguaje multi-paradigma y también utiliza algunos conceptos familiares para la Programación

Procedimental.

Por otro lado, la programación estructurada es un tipo de programación imperativa, donde las

declaraciones se ponen en procedimientos, que se pueden volver a llamar cuando sea necesario. C

usa programación procedimental.

Debido a lo anterior con el propósito de describir lo concerniente a la Programación Orientado

a Objetos, a continuación el presente informe.


Conceptos Fundamentales de la Programación Orientada a Objetos

Programación Orientada a Objetos

La Programación Orientación a Objetos (P.O.O.) surge en Noruega en 1967 con un

lenguaje llamado Simula 67, desarrollado por Krinsten Nygaard y Ole-Johan Dahl, en el

centro de cálculo noruego.

Simula 67 introdujo por primera vez los conceptos de clases, corrutinas y subclases ;

conceptos que son similares a la programación orientada a objetos actual.

Entonces podemos decir que es un tipo de programación que se utiliza para estructurar

un programa de software en piezas simples y reutilizables de planos de código para crear

instancias individuales de objetos.

Así mismo, para considerar un lenguaje de programación como orientado a objetos se

deben cumplir algunas condiciones. Debe soportar objetos, que deben tener un tipo o

clase asociado y que estas clases puedan heredar atributos de una clase superior o

superclase.

Actualmente existen una gran variedad de lenguajes de programación orientados a objetos

entre los que podemos destacar: C++, Objective C, Java, Ruby, Visual Basic, Visual C Sharp, Perl,

Smalltalk, PHP o Python.

La programación orientada a objetos facilita estructurar y organizar programas, debido a que

los objetos individuales se pueden modificar sin afectar otros aspectos del programa, también es

más fácil actualizar y cambiar los programas escritos en lenguajes orientados a objetos. A medida
que los programas de software han crecido a lo largo de los años, OOP ha hecho que el desarrollo

de estos grandes programas sea más manejable.

Elementos de la Programación Orientada a Objetos

Entidad

Una entidad es un objeto concreto o abstracto que presenta interés para el sistema y sobre el

que se recoge información la cual va a ser representada en un sistema de base de datos. La

mayoría de las entidades modelan objetos o eventos del mundo real, por ejemplo, clientes,

productos o llamadas de pedidos.

Clases

Es una plantilla que define de manera genérica cómo van a ser los objetos de un determinado

tipo.

Así mismo, define el comportamiento y atributos de un grupo de estructura y comportamiento

similar.

Objetos

Se trata de un ente abstracto que permite separar los diferentes componentes de un programa,

simplificando así su elaboración, depuración y posteriores mejoras.

Por otro lado, un objeto es la unidad individual que en tiempo de ejecución realiza las tareas

de un programa. Cada objeto es capaz de recibir mensajes, procesar datos y enviar mensajes a

otros objetos de manera similar a un servicio.


Por otro lado, Un objeto es un elemento tangible (ocupa memoria) generado a partir de una

definición de clase.

Polimorfismo

Se refiere al hecho de que varios objetos de diferentes clases, pero con una base común, se

pueden usar de manera indistinta, sin tener que saber de qué clase exacta son para poder hacerlo.

Abstracción

Se puede definir como las características específicas de un objeto, aquellas que lo distinguen

de los demás tipos y que logran definir límites conceptuales respecto a quien está haciendo dicha

abstracción.

En otras palabras, es conseguir describir un objeto con propiedades y métodos principales sin

pensar en detalle. La abstracción separa el comportamiento específico de un objeto, a esta

división que se realiza se le conoce como la barrera de abstracción.

Herencia

La herencia permite que se puedan definir nuevas clases basadas de unas ya existentes a fin de

reutilizar el código, generando así una jerarquía de clases dentro de una aplicación. Si una clase

deriva de otra, esta hereda sus atributos y métodos y puede añadir nuevos atributos, métodos o

redefinir los heredados.

Encapsulamiento

La encapsulación es la característica de un lenguaje POO que permite que todo lo referente a

un objeto quede aislado dentro de éste. Es decir, que todos los datos referentes a un objeto queden
"encerrados" dentro de éste y sólo se puede acceder a ellos a través de los miembros que la clase

proporcione (propiedades y métodos).

Atributos

Los atributos son las características individuales que diferencian un objeto de otro y

determinan su apariencia, estado u otras cualidades. Los atributos se guardan en variables

denominadas de instancia, y cada objeto particular puede tener valores distintos para estas

variables.

También llamados datos o variable miembro, que son porciones de información que un objeto

posee o conoce de si mismo. Y así mismo nos permite diferenciar objetos, agregando

características distintas para cada uno.

Métodos

Son aquellas funciones que permite efectuar el objeto y que nos rinden algún tipo de servicio

durante el transcurso del programa.

De igual manera, los métodos son la forma en que se comunican los objetos unos con otros.

Los datos de un objeto están disponibles para ser manipulados solo por métodos del propio

objeto.

Modificadores de Acceso

Los modificadores de acceso permiten al diseñador de una clase determinar quién accede a los

datos y métodos miembros de una clase


Existen los siguientes modificadores de acceso:

1. Public - Todo el mundo puede acceder al elemento. Si es un dato miembro, todo el mundo

puede ver el elemento, es decir, usarlo y asignarlo. Si es un método todo el mundo puede

invocarlo.

2. Private - Sólo se puede acceder al elemento desde métodos de la clase, o sólo puede

invocarse el método desde otro método de la clase.

3. Protected - Se explicará en el capítulo dedicado a la herencia.

4. Sin modificador - Se puede acceder al elemento desde cualquier clase del package donde

se define la clase.

Tipos de datos

Un tipo de dato es una característica de datos que especifican como debe trabajarse el mismo

dentro de un entorno, esto incluye si se deben aplicar restricciones o alguna operación específica

para este tipo de dato.

También, los tipos son la puesta en vigor de la clase de objetos, los objetos con distintos tipos

no podrán intercambiarse o al menos no totalmente, si se lograran intercambiar solo de formas

muy limitadas.

Un tipo es una caracterización de propiedades estructurales o de comportamiento que utilizan

una serie de entidades.


Existen algunas maneras de comprobar los tipos:

 Estático:

Consiste en qué el tipo exacto de cada expresión pueda ser localizado en tiempo de

compilación mediante un análisis estático de la aplicación.

El tipo estático detecta anomalías en tiempo de compilación, pero puede ser muy restrictivo.

 Dinámico:

Se realizan las comprobaciones en tiempo real (ejecución).

Esto quiere decir que una variable puede tomar valores de diferentes tipos en diferentes

momentos.

 Débilmente tipados:

El término débilmente tipados hace referencia a las conversiones incluidas que se realizan

entre los tipos. El tipo de dato no se define sobre la variable, si no que se define sobre el valor

con esto logramos que se pueda usar variables de cualquier tipo en un mismo escenario.

 Fuertemente tipados:

Aquellos lenguajes fuertemente tipados no permiten que un tipo de dato sea tratado como otro,

no permiten violaciones de los tipos de datos, es decir, un tipo no se puede usar como si fuera un

tipo diferente para ello es necesario que se haga una conversión.


Convención de Nombres

Es un conjunto de reglas para la elección de la secuencia de caracteres que se utilice para

identificadores que denoten variables, tipos, funciones y otras entidades en el código fuente y la

documentación.

Algunas de las razones para utilizar una convención de nombres son:

1. Reducir el esfuerzo necesario para leer y entender el código fuente

2. Mejorar la apariencia del código fuente (por ejemplo, al no permitir nombres

excesivamente largos o abreviaturas poco claros).

Constructores de una clase

Es un método que tiene el mismo nombre de la clase y que tiene el propósito de inicializar los

atributos y variables cuando se instancia la clase.

Por otro lado, un constructor no puede devolver ningún valor, por lo que su tipo de retorno

siempre es “void”. Dado que siempre será así, en su declaración se omite esta sección.
CONCLUSION

- La Programación Orientada a Objetos es actualmente el paradigma que más se utiliza para

diseñar aplicaciones y programas informáticos. Son muchas sus ventajas, principalmente cuando

necesitas resolver desafíos de programación complejos. Permite una mejor estructura de datos y

reutilización del código, lo que facilita el ahorro de tiempo a largo plazo. Eso sí, para ello se

requiere pensar bien en la estructura del programa, planificar al comienzo de la codificación, así

como analizar los requisitos en clases simples y reutilizables que se pueden usar para diseñar

instancias de objetos.

- Podemos decir que los lenguajes de programación orientados a objetos tratan a los programas

como conjuntos de objetos que se ayudan entre ellos para realizar acciones, entendiendo como

objeto a las entidades que contienen datos y permitiendo que los programas sean más fáciles de

escribir, mantener y reutilizar.


BIBLIOGRAFÍA

https://profile.es/blog/que-es-la-programacion-orientada-a-objetos/

https://openwebinars.net/blog/que-es-la-programacion-orientada-objetos/

https://techlib.net/definition/oop.html

https://damian02.wordpress.com/objetos-poo/

https://ifgeekthen.everis.com/es/herencia-en-programacion-orientada-objetos

https://gl-epn-programacion-ii.blogspot.com/2011/01/modificadores-de-acceso.html

https://laraveles.com/series/poo/tipos-datos-programacion-orientada-

objetos/#:~:text=La%20manera%20de%20comprobar%20los,tratarse%20como%20un%20tipo%

20est%C3%A1tico.

También podría gustarte