You are on page 1of 10

TECNOLOGA ORIENTADA A OBJETOS

Hoy en da la tecnologa orientada a objetos ya no se aplica solamente a los


lenguajes de programacin, adems se viene aplicando en el anlisis y diseo
con mucho xito, al igual que en las bases de datos. s que para hacer una
buena programacin orientada a objetos hay que desarrollar todo el sistema
aplicando esta tecnologa, de ah la importancia del anlisis y el diseo orientado
a objetos.
!a programacin orientada a objetos es una de las "ormas ms populares de
programar y viene teniendo gran acogida en el desarrollo de proyectos de
so"t#are desde los $ltimos aos. sta acogida se debe a sus grandes
capacidades y ventajas "rente a las antiguas "ormas de programar.
Una Perspectiva Histrica
!a tecnoo!"a #e O$%etos data de los aos %&, cuando surge la necesidad
de describir y simular "enmenos como siste&as #e co&'nicacin, re#es
ne'raes, siste&as a#&inistrativos, etc.
n '(%' )rystin *ygaard con la idea de desarrollar un lenguaje de doble
propsito +descripcin de sistema y simulacin programable,, crea SI(ULA I) !os
usuarios descubrieron que tambin provea de nuevas y poderosas "acilidades
cuando era usado para otros propsitos, aparte de la simulacin, tales como el
prototipeo y aplicaciones.
n '(%- se cre SI(ULA *+, y en l se implementaron por primera ve. los
conceptos de clase, objeto y herencia, que en adelante seran elementos
centrales en los Len!'a%es Orienta#os A O$%etos. /012!3 %- es una extensin
del lenguaje ALGOL *, y diseado en '(%- por Oe 4 Jo-an Da- y .r/stin
N/!aar#0 de la 2niversidad de 5slo y del 6entro de 6omputacin *oruego +*ors7
8egasentral,. /in embargo /imula, as como se le conoce actualmente, es un
lenguaje de programacin de propsito general, que no es ampliamente utili.ado.
n '(-& se crea el S(ALLTAL.0 ste "ue el mayor desarrollo de los
lenguajes orientado a objetos. l proyecto de investigacin se reali. en la
Corporacin 1ero2, 6entro de 0nvestigacin de 9alo 3lto +9386 4 9alo 3lto
8esearch 6enter, y "ue dirigido por Aan .a/. mpe. en los -&:s y tuvo como
meta, ms que el lenguaje de programacin, una completa inter3a4 !r53ica y
-erra&ienta #e #esarroo inte!ra#as.
1ero2 PARC "ue la pionera en el desarrollo y utili.acin de los componentes
estndar de las modernas inter"aces gr"icas, como ventanas, iconos, mouse, etc.
S&ata6 "ue el primer lenguaje orientado a objetos, ya que trat
exclusivamente con ellos; los subsecuentes, se ha basado en los conceptos
utili.ados por l. /malltal7 "ue importante no slo por su lenguaje, sino por las
herramientas de desarrollo disponibles en su ambiente, stas incluyen
visuali.adores de clases +class bro#sers, e inspeccionadores de objetos +object
inspectors, .
2n visuali.ador de clases es una poderosa herramienta, que permite editar
el cdigo del programa, en una manera mucho ms conveniente y estructurada
que utili.ando editores convencionales. 9or la estructura, inherente, bien de"inida
por los programas orientados a objetos, el visuali.ador de clases es capa. de
mostrar, en "orma gr"ica, el rbol de una clase dada, permitiendo al usuario
<apuntar y disparar< mtodo en particular +proceso, a ser editado. 5tras ventajas
del visuali.ador es que muchas tareas de programacin se reali.an slo por
men$s, por ejemplo la creacin de una nueva clase modi"icacin de la estructura
del rbol de herencia, modi"icacin de una estructura de una clase etc. stas
operaciones son mucho ms complejas cuando se reali.an en un ambiente de
edicin tradicional.
Herramientas como stas, son una parte integral de la <promesa< de la
=ecnologa 5rientada a 5bjetos, ya que puede simpli"icar la vida del programador,
reduciendo el costo y el tiempo de desarrollo.
n los aos >& evoluciona el S(ALLTAL. y se crea ADA0 lo que hi.o
crecer el inters en el ?iseo 5rientado a 5bjetos.
n estos lenguajes la abstraccin de los datos tienen gran importancia. !os
problemas del mundo real se representan mediante objetos a los cuales se le
agrega operaciones cuando es necesario
!a TOO se "undamenta en el proceso de construccin y utili.acin de
conocimientos, por lo tanto, objetos y clases son los pasos ms importantes en la
b$squeda de una nueva revolucin que reemplace, esta ve., parte del es"uer.o
que implica la organi.acin y utili.acin del conocimiento, del mismo modo que en
la primera, las mquinas reempla.aron el es"uer.o "sico del hombre y de los
animales, permitiendo el vertiginoso avance del mundo.
!os <C-ips #e So3t7are< +5bjetos y clases altamente reutili.ables, sern el
motor de la revolucin que ya se ha iniciado. 9articipar en ella garanti.ar nuestra
competitividad en el "uturo y solo nos exige todo el es"uer.o de nuestra capacidad
creativa, y de la perseverancia de construir productos de alta calidad. !a materia
ms importante del so"t#are es la inteligencia.
) 8C'5es son as venta%as #e 'n en!'a%e
orienta#o a o$%etos9
1uchos de los bene"icios son alcan.ados $nicamente cuando el 3nlisis y
?iseo son utili.ados con -erra&ientas CASE Orienta#as a O$%etos0 basados
en repositorios que generan cdigos.
@omenta la reutili.acin y extensin del cdigo.
9ermite crear sistemas ms complejos.
8elacionar el sistema al mundo real.
@acilita la creacin de programas visuales.
6onstruccin de prototipos
3gili.a el desarrollo de so"t#are
@acilita el trabajo en equipo
@acilita el mantenimiento del so"t#are
!o interesante de la Pro!ra&acin Orienta#a a O$%etos es que
proporciona conceptos y herramientas con las cuales se modela y representa el
mundo real tan "ielmente como sea posibleA
Re'tii4acin.4 !as clases son diseadas de tal manera que ellas puedan
ser reutili.adas en muchos sistemas. 9ara maximi.ar la reutili.acin las clases
deben ser construidas de manera que puedan ser personali.adas. 2n repositorio
debera ser cargado con una coleccin de clases reutili.ables. 2n objetivo
permanente de las tcnicas 5rientadas a 5bjetos, es conseguir la reutili.acin
masiva en la construccin de so"t#are.
Esta$ii#a#): !as clases diseadas para la reutili.acin repetida, llegan a
ser estables de la misma manera que los microprocesadores y otros chips que
son bastante estables. !as aplicaciones sern construidas utili.ando chips de
so"t#are. l ?iseador piensa de 6omportamiento de 5bjeto, no en *iveles de
?etalle. l encapsulamiento oculta los detalles y hace "cil el uso de clases
complejas. !as clases son semejantes a las cajas negras. l desarrollador utili.a
la caja negra sin mirar su interior. l tiene un entendimiento del comportamiento
de la caja negra y cmo comunicarse con ella.
Constr'ccin #e O$%etos #e co&pe%i#a# Creciente): !os objetos se
construyen "uera de los objetos. 2na buena manera de "abricar es construir
tomando una lista de materiales de partes y subpartes existentes. sto posibilita
construir componentes de so"t#are complejos y los mismos se utili.arn para
construir otros bloques de so"t#are ms complejos.
Con3ia$ii#a#): ! so"t#are construido a partir de una librera de clases
estables, es probable que se encuentre libre de errores, respecto a construir
so"t#are desde el inicio. 6ada mtodo en una clase es en s mismo simple y
diseado para ser con"iable.
;eri3icacin #e Correcciones): l ?iseo 5rientado a 5bjetos con tcnica
"ormal para la creacin de mtodos, puede generar potencialmente so"t#are de
alta con"iabilidad. =cnicas para veri"icar y garanti.ar la operacin correcta de una
clase, probablemente estn disponibles en nuevas generaciones de herramientas
63/ 5rientadas a 5bjetos.
Dise<o R5pi#o.4 !as aplicaciones son creadas tomando componentes
preexistentes. 1uchos componentes son construidos de tal "orma que, puedan
ser observados, personali.ados, para un diseo particular. !os componentes
pueden ser vistos, customi.ados y enla.ados en la pantalla de la herramienta
63/.
N'evos (erca#os #e So3t7are): !as compaas de so"t#are, deberan
proporcionar libreras de clases para reas espec"icas, "cilmente adaptables a
las necesidades de la organi.acin. !a era de los paquetes monolticos esta
siendo reempla.ada por so"t#are que incorpora clases y encapsula paquetes de
di"erentes vendedores.
Dise<o #e Ata Cai#a#): !os diseos son a menudo de alta calidad, ya que
ellos se construyen a partir de componentes que han sido aprobados y re"inados
repetidamente.
Inte!ri#a#): !as estructuras de ?atos pueden ser utili.adas solamente con
mtodos espec"icos. sto es particularmente importante en sistemas distribuidos
y sistemas 6!0*=B/8C0?58, donde usuarios desconocidos pueden tratar de
accesar al sistema.
=acii#a# #e Pro!ra&acin): !os programas son construidos utili.ando
pequeas pla.as de so"t#are las cuales son generalmente "ciles de crear.
=5ci (anteni&iento): !os programas de mantenimiento generalmente
cambiarn los mtodos correspondientes a una clase. 6ada clase reali.a sus
operaciones independientemente de otras clases.
Creativi#a#): 0mplementadores hbiles en poderosas herramientas 63/
5rientadas a 5bjetos laborando sobre estaciones de trabajo, encuentran que
puede generar rpidamente muchas ideas. !as herramientas estimulan la
creacin e implementan las invenciones. !a genialidad individual puede ser ms
creativa.
Cico #e ;i#a Din5&ico.4 !os objetivos de desarrollo de un sistema, a
menudo cambian durante la implementacin. !as herramientas 63/ 5rientadas
a 5bjetos, hacen los cambios durante el ciclo de vida rpidamente. sto permite a
los diseadores de sistemas satis"acer mejor a los usuarios "inales, adaptarse a
los cambios, re"inar los objetivos y mejorar constantemente el diseo durante la
implementacin.
Re3ina&iento #'rante a Constr'ccin): !as personas creativas cambian
constantemente el diseo de su trabajo mientras se est implementando. sto
conduce a ms y mejores resultados. !os trabajos creativos objetivos, son una y
otra ve. re"inados. !as herramientas 63/ 5rientadas a 5bjetos proporcionan a
los constructores de so"t#are la capacidad para re"inar el diseo durante la
implementacin.
(o#ea&iento &5s rea"stico): l 3nlisis 5rientado a 5bjetos modela la
empresa o rea de negocio de una manera ms coherente y minuciosa que los
mtodos tradicionales de anlisis. l anlisis se traslada directamente al diseo e
implementacin. n tcnicas convencionales, el entorno del problema cambia
cuando vamos del anlisis al diseo y del diseo a la programacin. 6on tcnicas
de 3nlisis, ?iseo e 0mplementacin 5rientados a 5bjetos utili.a el mismo
paradigma y lo re"inan sucesivamente.
Inter3ase Gr53ica Se#'ctiva a Us'ario.4 /e debera utili.ar inter"aces
gr"icas para usuarios, tal que sta apunte al icono que relacione al objeto.
In#epen#encia #e Dise<o): !as clases son diseadas independientemente
de plata"orma de operacin, hard#are o so"t#are. !as clases emplean
requerimientos y respuestas de "orma. sto permite que ellos sean utili.ados con
m$ltiples sistemas operativos, ?D1/, manejadores de redes, inter"aces gr"icas
para usuarios, etc.
Interoperativi#a#)4 /o"t#are de di"erentes vendedores pueden trabajar
juntos. 2n vendedor puede utili.ar clase de otros vendedores. !a interoperatividad
de so"t#are de di"erentes vendedores es uno de los objetivos ms importantes de
los estndares de la 5rientacin a 5bjetos. /o"t#are desarrollados
independientemente en lugares separados, deberan ser capaces de trabajar
juntos y presentarse como una unidad simple al usuario.
Co&p'tacin Ciente > Servi#or.4 n el sistema 6liente B /ervidor, las
clases en el so"t#are cliente deberan enviar sus requerimientos a las clases de
so"t#are servidor y recibir respuestas. 2na clase servidor puede ser utili.ada por
muchos clientes. sto puede accesar al so"t#are $nicamente a travs de los
mtodos +as los datos se protegen de corrupciones,.
Co&p'tacin &asiva&ente Distri$'i#a.4 8edes alrededor del mundo
emplearn directorios de so"t#are de objetos accesibles. l diseo orientado al
objeto, es la clave para la computacin masivamente distribuida. !as clases en
una mquina interactuarn con cualquier otra, sin necesidad de saber dnde
residen. llas envan y reciben mensajes en "ormatos estndares.
Co&p'tacin Paraea): !a velocidad de las maquinas., pueden ser
ampliamente mejoradas mediante la instalacin de computadoras en paralelo. /e
pueden tener procesamientos simultneos y concurrentes en m$ltiples chips de
procesadores +eventualmente, un chip puede tener muchos procesadores,.
5bjetos en di"erentes procesadores se ejecutarn simultneamente, cada uno de
ellos actuando independientemente.
Ato Nive #e A'to&ati4acin #e Bases #e #atos.4 !as estructuras en
Dase de ?atos 55, estn ligadas a mtodos que toman acciones automticas.
2na Dase de ?atos 55, tiene su inteligencia construida en la "orma de mtodos,
mientras que otras bases de datos no.
Per3or&ance #e (5?'inas.4 !a Dases de ?atos 5rientada a 5bjetos han
demostrado una mayor per"ormance que las bases de datos relacionales para
ciertas aplicaciones con estructuras de datos ms complejas. !as bases de datos
5rientados a 5bjetos, la computacin concurrente y el diseo 5rientado a 5bjetos
prometen mayores saltos en la per"ormance de las mquinas !3*:/ basadas en
sistemas 6lienteB/ervidor. mplearn servidores de Dase de ?atos concurrentes
y orientadas al objeto.
(i!racin): xistiendo o no aplicaciones orientadas a objetos, ellos pueden
ser preservados convenientemente con una cobertura 5rientada a 5bjetos,
comunicndose entre ellos mediante mensajes estndares 5rientados a 5bjetos.
(e%ores -erra&ientas CASE): !as herramientas 6ase utili.arn tcnicas
gr"icas para disear las clases y sus interacciones, y para utili.ar objetos
existentes adaptados en nuevas aplicaciones. !as herramientas deberan "acilitar
el modelamiento en trminos de eventos, triggers +iniciadores,, estado de los
objetos, etc. !as -erra&ientas #e os CASE Orienta#os a O$%etos generan
cdigos tan pronto como una clase sea de"inida y permitir al diseador probar y
utili.ar el mtodo creado. !as herramientas debern ser diseadas para estimular
la mxima creatividad y continuo re"inamiento del diseo durante la construccin.
In#'striaes #e Li$rer"as #e Cases.4 !as compaas de so"t#are
comerciali.arn libreras para di"erentes reas de aplicacin. !as libreras de
clases independientes de las aplicaciones, sern tambin importantes y stas
sern proporcionadas como "acilidades de herramientas 63/ +C06,.
Li$rer"as #e Cases Corporativas): !as corporaciones, crearn sus propias
libreras de clases que re"lejen sus estndares internos y requerimientos de
aplicacin. !a identi"icacin =594?5E* de los 5DF=5/ del negocio, es un
aspecto importante de la ingeniera de la 0n"ormacin.
!os di"erentes bene"icios a"ectan a di"erentes desarrolladores de diversas
maneras. xaminaremos los bene"icios percibidos porA

Un Inventor): l inventor de so"t#are requiere el conjunto de herramientas
del 63/ 5rientadas a 5bjetos, para generar cdigos tan rpidos como l sobre
la pantalla.
=5$rica #e So3t7are): 9ara crear productos ricos e interesantes, el
"abricante de so"t#are requiere incorporar so"t#are de otros vendedores en sus
propios diseos.
Je3e #e In3or&5tica.4 l objetivo es ensamblar aplicaciones de alta calidad
tomando partes reutili.ables y utili.ando un generador para todo cdigo nuevo.
Un E?'ipo #e Pro/ecto #e Siste&as #e In3or&acin.4 !as herramientas
63/ 5rientadas a 5bjetos posibilitan al equipo ajustar continuamente o disear
la aplicacin mientras se est construyendo para satis"acer las necesidades del
usuario, tan "ielmente como sean posibles.
Un Inte!ra#or #e Siste&as): 2n integrador de sistemas tiene que ver conA
6onstruccin del /istema de 8edes.
1aquinas y so"t#are de di"erentes vendedores.
2n problema may$sculo, es buscar que los so"t#are de los di"erentes
vendedores trabajen juntos.
2no de los bene"icios ms importantes de la 5rientacin a 5bjetos es su
nivel de reutili.acin. !as tcnicas 5rientadas a 5bjetos permiten alcan.ar la
reutili.acin de dos manerasA
'. 6onstruir so"t#are tomando co&ponentes +clases, que ya existen.
G. 6rear cases &o#i3ica#as utili.ando herencia que les permite
reutili.ar mtodos y estructuras de datos de clases de nivel superior.

You might also like