Sei sulla pagina 1di 14

INTRODUCCION

La programacin Orientada a objetos es una forma especial de


programar, ms cercana a como expresaramos las cosas en la vida real que
otros tipos de programacin. Con la POO tenemos que aprender a pensar las
cosas de una manera distinta, para escribir nuestros programas en trminos de
objetos, propiedades, mtodos y otras cosas que veremos rpidamente para
aclarar conceptos y dar una pequea base que permita soltarnos un poco con
este tipo de programacin. Durante aos, los programadores se han dedicado
a construir aplicaciones muy parecidas que resolvan una y otra vez los mismos
problemas. Para conseguir que los esfuerzos de los programadores puedan ser
utilizados por otras personas se cre la POO. Que es una serie de normas de
realizar las cosas de manera que otras personas puedan utilizarlas y adelantar
su trabajo, de manera que consigamos que el cdigo se pueda reutilizar.
Este tipo de programacin esta conformada por muchos elementos
como por ejemplo: los objetos que no es ms que una estructura de datos y
conjunto de procedimientos que operan sobre dicha estructura, las clases que
se puede definir como un molde o bien prototipo en donde se definen los
atributos (variables) y las acciones (mtodos) comunes de una entidad, las
propiedades de este estilo de programacin como lo son la modularidad que
se trata de descomponer un programa en partes ms pequeas o
abstracciones coherentes que pertenecen al dominio del problema y cuya
complejidad interna es susceptible de ser enmascarada por la descripcin de
una interfaz, el encapsulamiento que es una tcnica que permite localizar y
ocultar los detalles de un objeto. La encapsulacin previene que un objeto sea
manipulado por operaciones distintas de las definidas y la herencia que es un
proceso mediante el cual un objeto puede adquirir las propiedades de otro
objeto, entre otras muchas propiedades y caractersticas.
En el siguiente informe se ampliaran conceptos como objetos, clases,
modularidad, encapsulamiento, herencia ya entes mencionados adems de
Modelo, abstraccin, tipos abstractos de datos, sobrecarga, polimorfismo,
composicin, agregacin, dependencia, realizacin entre otros

Modelo:
En informtica un modelo es la representacin de la realidad por medio de
abstracciones, los modelos enfocan ciertas partes importantes de un sistema,
restndoles importancia a las otras. Para ejemplificar lo antes dicho se tiene
que:
En la construccin de un modelo mecnico de un sistema fsico se debe
tener en cuenta que hay que partir de objetos concretos. Los objetos
aqu seran, en un modelo de una pista de carreras: los autos, las
carreteras, las llegadas, las graderas, espectadores, etc.
Por otro lado en la construccin de un modelo algortmico de un sistema
fsico a partir de objetos de software. Los objetos aqu seran: rutinas de
conexin a DB, shorts, validacin de acceso, despliegue, impresiones,
etc.
En otras palabras un modelo no es ms que plasmar la idea inicial de lo que
se quiere llevar a cabo y construir o disear.
Abstraccin:
En el sentido ms general, una abstraccin es una representacin
concisa de una idea o de un objeto complicado. En un sentido ms especifico,
la abstraccin localiza y oculta los detalles de un modelo o diseo para generar
y manipular objetos.
La abstraccin es el proceso en el cual separamos las propiedades ms
importantes de un objeto, de las que no lo son. Es decir, por medio de la
abstraccin definimos las caractersticas esenciales de un objeto del mundo
real, los atributos y comportamientos que lo definen como tal, para despus
modelarlo en un objeto de software.
La abstraccin tambin expresa las caractersticas esenciales de un
objeto, las cuales distinguen a este objeto de los dems, en otras palabras una
abstraccin de una clase no es ms que ver esta misma clase desde distintos
enfoques y punto de vista y a partir de este poder proceder a su diseo e
implementacin.
Tipo abstracto de dato:
Un tipo abstracto de dato es un dato definido por el programador que se
puede manipular de un modo similar a los tipos de datos definidos por el
sistema. Al igual que los tipos definidos por el sistema, un tipo de dato
abstracto corresponde a un conjunto de valores legales de datos y un nmero
de operaciones permisivas que se pueden realizar por esos valores
Cabe destacar que algunos lenguajes de programacin tienen
caractersticas que nos permiten implicar el lenguaje aadiendo sus propios
tipos de datos al lenguaje. Estos tipos de datos abstractos de definen como
TAD esto para poder diferenciarlo del tipo de dato fundamental que es el que
viene integrado en los lenguajes de programacin.
Modularidad:
La modularidad se trata de descomponer un programa en partes ms
pequeas o abstracciones coherentes que pertenecen al dominio del problema
y cuya complejidad interna es susceptible de ser enmascarada por la
descripcin de una interfaz.
La modularidad, nos permite poder modificar las caractersticas de la
clase que definen a un objeto, de forma independiente de las dems clases en
la aplicacin. En otras palabras, si nuestra aplicacin puede dividirse en
mdulos separados, normalmente clases, y estos mdulos pueden compilarse
y modificarse sin afectar a los dems, entonces dicha aplicacin ha sido
implementada en un lenguaje de programacin que soporta la modularidad. La
tecnologa orientada a objetos nos brinda esta propiedad para hacer uso de ella
en el software que desarrollemos.
Clase:
Es un molde o bien prototipo en donde se definen los atributos
(variables) y las acciones (mtodos) comunes de una entidad.
El mundo est lleno de objetos: el coche, la lavadora, la mesa, el
telfono, etc. El paradigma de programacin orientada a objetos proporciona
las abstracciones necesarias para poder desarrollar sistemas software de una
forma ms cercana a esta percepcin del mundo real. Mediante la POO, a la
hora de tratar un problema, podemos descomponerlo en subgrupos de partes
relacionadas. Estos subgrupos pueden traducirse en unidades auto contenidas
llamadas objetos. Antes de la creacin de un objeto, se debe definir en primer
lugar su formato general, su plantilla, que recibe el nombre de clase.

Objeto:
Una estructura de datos y conjunto de procedimientos que operan sobre
dicha estructura (el objeto). Una definicin ms completa de objeto es: una
entidad de programa que consiste en datos y todos aquellos procedimientos
que pueden manipular aquellos datos; el acceso a los datos de un objeto es
solamente a travs de estos procedimientos, nicamente estos procedimientos
pueden manipular, referenciar y/o modificar estos datos. Una unidad de
software conformada por atributos y mtodos especficos.

Encapsulacin:
Es una tcnica que permite localizar y ocultar los detalles de un objeto.
La encapsulacin previene que un objeto sea manipulado por operaciones
distintas de las definidas. La encapsulacin es como una caja negra que
esconde los datos y solamente permite acceder a ellos de forma controlada.
Tambin referido como ocultamiento de la informacin, el
encapsulamiento es la propiedad de la orientacin a objetos que nos permite
asegurar que la informacin de un objeto le es desconocida a los dems
objetos en la aplicacin. Es muy frecuente referirse a los objetos de software
como cajas negras, esto se debe principalmente a que no necesitamos, dentro
de la programacin orientada a objetos, saber cmo esta instrumentado un
objeto para que este interacte con los dems objetos. Generalmente una
clase se define en dos partes, una interfaz por medio de la cual los objetos que
son instanciados de la misma interactan con los dems objetos en la
aplicacin, y la implementacin de los miembros de dicha clase (mtodos y
atributos). Retomando dos de los ejemplos anteriores, supongamos que
deseamos realizar una aplicacin en donde deben interactuar el objeto
Mercedes Benz, instancia de la clase automvil y el objeto Juan Prez,
instancia de la clase Persona. Ambos objetos pueden ser vistos como cajas
negras las cuales se comunican por medio de una interfaz. El objeto Mercedes
no sabe como esta implementado el objeto Juan Prez y viceversa.
Concretamente, el encapsulamiento permite a un objeto ocultar informacin al
mundo exterior, o bien restringir el acceso a la misma
Hay muchos datos que no tiene porque conocerlo aquel que est usando
la clase Persona; ya que son inherentes al objeto y solo controlan su
funcionamiento interno; por ejemplo, cuando alguien te ve puede saber
inmediatamente si eres hombre o mujer (propiedad) o puede hablarte y obtener
una respuesta procesada (mtodo); tambin puede conocer el color de tu
cabello y ojos. En cambio, jams sabr que cantidad de energa exacta tienes o
cuantas neuronas te quedan, ni siquiera preguntndote ya que ninguna de tus
propiedades externas visibles o funciones de comunicacin al pblico te
permiten saber esos datos.
La encapsulacin es muy conveniente y nos permite (Si programamos
bien) colocar en funcionamiento nuestro objeto en cualquier tipo de sistema, de
una manera modular y escalable (algunas de las reglas de la ingeniera del
software).
Sobrecarga
Es la capacidad de un lenguaje de programacin, que permite nombrar
con el mismo identificador diferentes variables u operaciones.
En programacin orientada a objetos la sobrecarga se refiere a la
posibilidad de tener dos o ms funciones con el mismo nombre pero
funcionalidad diferente. Es decir, dos o ms funciones con el mismo nombre
realizan acciones diferentes. El compilador usar una u otra dependiendo de
los parmetros usados. A esto se llama tambin sobrecarga de funciones.
Tambin existe la sobrecarga de operadores que al igual que con la sobrecarga
de funciones se le da ms de una implementacin a un operador.
El mismo mtodo dentro de una clase permite hacer cosas distintas en
funcin de los parmetros.

Polimorfismo:
Significa que un nombre se puede utilizar para especificar una clase
genrica de acciones.
El polimorfismo es el tercer pilar de la programacin orientada a objetos.
Supone un paso ms en la separacin entre la interfaz y la implementacin.
Permite mejorar la organizacin del cdigo y simplificar la programacin.
Adems, aumenta las posibilidades de extensin y evolucin de los programas.
Est directamente relacionado con las jerarquas de clase. Bsicamente, nos
va a permitir que unos objetos tomen el comportamiento de objetos que se
encuentran ms abajo en la jerarqua, aumentando enormemente la
expresividad del lenguaje. En definitiva, se trata de la posibilidad de que la
identificacin del tipo de un objeto se haga en tiempo de ejecucin en vez de
en tiempo de compilacin. De esta manera, se pueden, incluso, construir
estructuras en las que cada uno de sus elementos es de un tipo diferente.
Herencia:
La herencia es un proceso mediante el cual un objeto puede adquirir las
propiedades de otro objeto.
Esta tambin puede ser vista como una propiedad que permite que los
objetos sean creados a partir de otros ya existentes, obteniendo caractersticas
(mtodos y atributos) similares a los ya existentes. Es la relacin entre una
clase general y otra clase mas especifica. Es un mecanismo que nos permite
crear clases derivadas a partir de clase base, Nos permite compartir
automticamente mtodos y datos entre clases subclases y objetos

Composicin
Es una relacin que representa a objetos compuestos por otros objetos.
El objeto en el nivel superior de la jerarqua es el todo y los que estn en los
niveles inferiores son sus partes o componentes. Un componente es parte
esencial de una entidad. La relacin es fuerte al punto que si el componente es
eliminado o desaparece, la clase mayor (el todo) deja de existir.
En informtica, la composicin de objetos o object composition (que no debe
ser confundida con la composicin de funciones) es una forma de combinar
objetos o tipos de datos simples en complejos. Las composiciones son
fundamentales en muchas estructuras de datos bsicas como las listas
enlazadas, los rboles binarios, como tambin en los objetos utilizados en la
programacin orientada a objetos.
En los lenguajes de programacin, la composicin de objetos es
usualmente expresada por medio de referencias de un objeto a otro;
dependiendo del lenguaje, esas referencias pueden ser conocidas como
campos, miembros, propiedades o atributos y la composicin resultante puede
ser una estructura, tupla, tipo definido por el usuario o registro.
Agregacin
Una agregacin es una relacin que representa a los objetos
compuestos. Un objeto es compuesto si se compone a su vez de otros objetos.
La agregacin de objetos permite describir modelos del mundo real que se
componen de otros modelos, que a su vez se componen de otros modelos.
Este es un concepto que se utiliza para expresar tipos de relaciones entre
objetos parte-de (part-of) o tiene-un (has-a). El objeto componente, tambin a
veces denominado continente o contenedor, es un objeto agregado que se
compone de mltiples objetos.
Una relacin del tipo "tener un" entre clases. Cuando la clase contenida
no existe independientemente de la clase que la contiene se denomina
agregacin por valor y adems implica contenido fsico, mientras que si existe
independientemente y se accede a ella indirectamente, es agregacin por
referencia.
Dependencia
La dependencia de clases es un concepto de la programacin orientada
a objetos que nos indica la relacin existente entre dos clases. Como su
nombre indica nos est diciendo que una clase depende de otra ara realizar su
funcionamiento.
Cuando trabajamos con clases es una buena prctica que una clase
realice una nica funcin. De manera que las clases que deban realizar
funciones complejas estarn formadas a partir de una asociacin de diversas
pequeas clases en las que delegar cada funcionalidad en concreto.
Realizacin
Es una relacin de contrato con otra clase. Se la utiliza para implementar
una interfaz. En lenguajes como java o php utilizamos la palabra reservada
implements
Generalmente cuando no estamos seguros si algo es una interfaz o
una clase abstracta, porque dibujaron los tag que hacen referencias a las
interfaces, debemos ver la relacin para saber.
Tarjetas CRC
Las tarjetas CRC sirven para poder disear el sistema como un equipo,
se deben cumplir tres requisitos: Cargo o Clase, Responsabilidad y
Colaboracin (CRC). Las tarjetas CRC permitirn desprenderse del mtodo de
trabajo basado en procedimientos y trabajar con una metodologa basada en
objetos, permiten tambin que el equipo completo contribuya en la tarea del
diseo.
Las tarjetas CRC (clase, responsabilidad y colaboracin) son una
metodologa para el diseo de software orientado por objetos creada por Kent
Beck y Ward Cunningham.
Es una tcnica para la representacin de sistemas OO, para pensar en
objetos. Son un puente de comunicacin entre diferentes participantes. Y sus
principales desventajas son la lentitud y los roces.
Se recomienda un grupo de trabajo con representantes de las distintas
partes. Tamao recomendable de cinco a seis personas: variedad de estilos y
no demasiadas divagaciones. Recomendacin de equipo: 1 2 usuarios, 2
analistas, 1 diseador y 1 moderador.
La lluvia de ideas es una buena prctica para sugerir cmo rellenar las
tarjetas Permite ver las clases como algo ms que depositorio de datos, sino
conocer el comportamiento de cada una en un alto nivel.
Sujeto:
Del latn subiectus, un sujeto es una persona innominada. El concepto
se usa cuando no se sabe el nombre de la persona o cuando no se quiere
declarar acerca de quin se est hablando. Por ejemplo: El sujeto ingres por
la puerta trasera del local y amenaz a los presentes con un arma de fuego,
Ese sujeto no me despierta la menor confianza, Oficial, tiene que ayudarme:
ese sujeto de camisa blanca me rob la cartera.
Dicho de otra manera el sujeto de una oracin corresponde a la persona
animal o cosa que realiza la accin del verbo por ejemplo: Juan habla. En este
ejemplo, el sujeto es Juan, pues es quien habla, es decir, el que realiza la
accin de hablar
Para identificar el sujeto de una oracin preguntaremos quin? O quines?
al verbo de la oracin. La respuesta que obtengamos, ser el sujeto.
Verbo:
El verbo es una palabra, con estructura bimembre, que indica accin
(comer, jugar, correr, saltar, pensar, dibujar), estado de nimo (rer, llorar,
parecer, suspirar, soar) o acontecimientos de la naturaleza (nevar, llover,
temblar)
En la oracin, el verbo funciona como el ncleo del predicado. En la
terminacin verbal podemos identificar el tiempo en que se realiza la accin, el
modo en que se realiza, la persona que realiza y el nmero.
La conjugacin de un verbo significa todas las formas que el mismo
puede adquirir como resultado de la combinacin de la raz verbal y las
diferentes desinencias que puede tener.
En la lengua espaola existen tres grandes modelos de conjugacin de los
verbos. Los mismos son:

Primera conjugacin: Formado por los verbos cuyos infinitivos terminan en ar:
Ejemplos: amar, desayunar, trabajar, cantar, encontrar.

Segunda conjugacin: verbos cuyos infinitivos termina en er.
Ejemplos: temer, correr, querer, comprender, satisfacer.

Tercera conjugacin: verbos cuyos infinitivos terminan en ir.
Ejemplos: partir, vivir, desistir, asistir.

Objeto directo
El objeto directo es la parte de la oracin que expresa la persona, animal
o cosa sobre la cual recae directamente la accin del verbo, y responde a las
preguntas: qu?, quin? o a quines? Por ejemplo, en la oracin Elisa
comi pastel, hay un sujeto: Elisa, quien realiza la accin expresada por el
verbo comi. Si nos preguntamos qu comi?, la respuesta ser pastel; en
este caso pastel es el objeto directo, porque sobre l recae directamente la
accin del verbo comer.
Si la oracin fuera: Elisa comi, la idea que en ella se expresa quedara
incompleta y enseguida nos preguntaramos qu? Para este verbo, al igual
que para muchos otros, es necesario que la accin se dirija o transite a un
objeto (o persona o animal)

Casos de uso
Los diagramas de casos de uso son unos de los cinco tipos de
diagramas de UML que se utilizan para el modelado de los aspectos dinmicos
de un sistema (los otros cuatros tipos son los diagramas de actividades, de
estados, de secuencia y de colaboracin). Los diagramas de casos de uso son
importantes para modelar el comportamiento de un sistema, subsistema o una
clase. Cada uno muestra un conjunto de casos de uso, actores y sus
relaciones.
Los diagramas de caso de uso son importantes para visualizar,
especificar y documentar el comportamiento de un elemento. Estos diagramas
facilitan que los sistemas, subsistemas o clases sean abordables y
comprensibles, al presentar una vista externa de cmo pueden utilizarse estos
elementos en un contexto dado. Los diagramas de casos de uso tambin son
importantes, para probar sistemas ejecutables a travs de ingeniera directa y
para comprender sistemas ejecutables a travs de ingeniera inversa.

Los diagramas de casos de uso pueden contener notas y restricciones.
Tambin pueden contener paquetes, que se emplean para agrupar elementos
del modelo en partes mayores. Ocasionalmente, se pueden incluir instancias
de casos de uso en los diagramas, especialmente cuando se quiera visualizar
un sistema especfico en ejecucin.

Los casos de uso son una tcnica para especificar el comportamiento de
un sistema: Un caso de uso es una secuencia de interacciones entre un
sistema y alguien o algo que usa alguno de sus servicios. Todo sistema de
software ofrece a su entorno aquellos que lo usan una serie de servicios. Un
caso de uso es una forma de expresar cmo alguien o algo externo a un
sistema lo usa. Cuando decimos alguien o algo hacemos referencia a que los
sistemas son usados no slo por personas, sino tambin por otros sistemas de
hardware y software.
Por ejemplo, un sistema de ventas, si pretende tener xito, debe ofrecer
un servicio para ingresar un nuevo pedido de un cliente. Cuando un usuario
accede a este servicio, podemos decir que est ejecutando el caso de uso
ingresando pedido.


Diagrama de casos de uso
El diagrama de casos de uso representa la forma en cmo un Cliente
(Actor) opera con el sistema en desarrollo, adems de la forma, tipo y orden en
como los elementos interactan (operaciones o casos de uso).
Un diagrama de casos de uso acta como foco en la descripcin de los
requisitos del usuario. En l se describen las relaciones entre los requisitos, los
usuarios y los componentes primarios. No se describen en detalle los
requisitos, ya que esto puede hacerse en otros diagramas o documentos que
pueden vincularse a cada caso de uso.
Diagrama de clases:
Los diagramas de clases son diagramas de estructura esttica que
muestran las clases del sistema y sus interrelaciones incluyendo herencia,
agregacin, asociacin, entre otros. Los diagramas de clase son el pilar bsico
del modelado con UML, siendo utilizados tanto para mostrar lo que es sistema
puede hacer, como para mostrar cmo puede ser construido. Los diagramas de
clase son los diagramas ms comunes en el modelado de sistemas orientados
a objetos.
Un diagrama de clase muestra un conjunto de clases, interfaces, y
colaboraciones y sus relaciones entre ellos.
Los diagramas de clase son importantes no solo para la visualizacin,
especificacin y documentacin del modelo estructural, sino tambin para la
construccin de sistemas ejecutables. Ingeniera hacia adelante e ingeniera
inversa.
Estos diagramas de clases tambin pueden verse como un conjunto de
clases, interfaces, y colaboraciones y sus relaciones. Grficamente un
diagrama de clase es una coleccin de vrtices y arcos.



CONCLUSION
Se puede concluir del siguiente informe que un modelo no es ms que
plasmar la idea inicial de lo que se quiere llevar a cabo y construir o disear. La
abstraccin es la propiedad de la programacin orientada a objetos que permite
al diseador a programador plasmar una clase u objeto desde la perspectiva
que sea acorde con el problema o situacin que se quiera solucionar, los datos
abstractos son un tipo de dato que es definido por el usuario y estos se
diferencian de los datos que vienen integrados en los entornos ya que como se
menciono anteriormente estos son creados y definidos por el mismo
programador, la modularidad no es ms que dividir un programa en partes ms
pequeas y manejables para que as de esta manera el programa pueda ser
modificado, actualizado o corregido con ms facilidad sin afectar el resto del
mismo.
Las clases son moldes o prototipos que permitirn al programador
instanciar objetos y de esta manera poder hacer que los programas interacten
y empiecen su funcionamiento, un objeto es lo que resulta de la instanciacin y
puesta en marcha de una clase, adems estos objetos poseen mtodos y
caractersticas. El encapsulamiento es la caracterstica de la POO que permite
que los atributos de una clase sean accedidos solo por los mtodos de esa
misma clase y que no puedan ser accedidos por otras clases ajenas al mismo.
La sobre carga es la caracterstica que permite utilizar un mismo
identificador y usarlo de distintas maneras en el mismo programa, La herencia
es un proceso mediante el cual un objeto puede adquirir o heredar las
propiedades de otro objeto. La composicin es una relacin que representa a
objetos compuestos por otros objetos. Una agregacin es una relacin que
representa a los objetos compuestos.
La realizacin es una relacin de contrato con otra clase y se la utiliza
para implementar una interfaz. Una ficha o tarjeta CRC (clase, responsabilidad
y colaboracin) es una metodologa para el diseo de software orientado por
objetos creada por Kent Beck y Ward Cunningham.
El sujeto de una oracin corresponde a la persona animal o cosa que realiza la
accin. El verbo es una palabra, con estructura bimembre, que indica accin, estado
de nimo o acontecimientos de la naturaleza.

Potrebbero piacerti anche