Вы находитесь на странице: 1из 6

2/24/2016 HistoriaDeLaPooEnsayosuniversitariosLoezaf

HistoriaDeLaPoo
porloezaf|buenastareas.com

PROGRAMACIONORIENTADAAOBJETOS.
Setratadeunlenguajedeladcadadelos60queincorporporprimeravezlasideas
deloquehoyseconocecomolaprogramacinorientadaaobjetos(enadelante,POO).
SuscreadoresfueronlosinvestigadoresnoruegosKristenNygaardyOleJohanDahldel
CentroNoruegodeComputacinenOslo,ysudesarrolloseextendidesde1962a
1967.
Elobjetivoinicialeradenirunlenguajedepropsitoespeccoparaaplicacionesde
simulacin.Realizaronunaprimeraversinen1964quesellamSimulaIyqueinclua
algunosconceptosinnovadoresconrespectoaALGOL60,talescomolagestin
dinmicadememoriayprimitivasparalaconcurrencia.
Tuvomuchoxitoentrelosusuariosnorteamericanosporquemejorabaaotroslenguajes
existentesenesapoca,especcosparalasimulacin,comoeranSIMSCRIPTy
GPSS.En1965,yanteelxitoobtenidoporsuprimeraversin,susautorespensaronen
unasegunda.HoareyWirthinuyeronenlasltimasfasesdediseoatravsdesus
relacionesconNygaardyDahlydeunaestanciaenOsloaprincipiosde1968.
Habandetectadounaseriedeinsucienciasenellenguaje:
*Lasentidadesprocesoyestacin,tilesensimulacin,eranentesdinmicosquese
creabanydestruanalolargodeunaejecucin.Laestructuradebloques,heredadade
ALGOL60,eraunobstculoparaesten.

*Cadaentidadtenaasociadasunconjuntodevariablesyunconjuntodeoperaciones
quelasmanipulaban.Eltextodelprogramanoreejabaclaramenteestarelacin.

*Elcdigodemuchasentidadeserabastantesemejante,peroellenguajeno
proporcionabamecanismosparareutilizarlaspartescomunes.

ElprimerhallazgodeNygaardyDahlfueladistincinentreunaclasedeentidadesun
textosuministradoporelprogramadorylosobjetosquesederivandeellaejemplares
creadosydestruidosdinmicamenteduranteunaejecucin.
UnaclaseenSimula67consisteenunacoleccindeprocedimientosyunconjuntode
declaracionesdevariables.SiAesunobjetodeunaclaseCyXesunadelasvariables
oatributosdelaclaseC,A.XrepresentaelatributoXdelobjetoA.

http://www.buenastareas.com/ensayos/HistoriaDeLaPoo/6037646.html 1/6
2/24/2016 HistoriaDeLaPooEnsayosuniversitariosLoezaf

Introdujeronuntipodedatosreferenciaaunobjetoquepermitaqueunamisma
variabledesignaraobjetosdistintosendistintosmomentos.Estetiponoeraotracosaque
eltipopuntero.Estanocindeclasefueenriquecidaenlenguajesposterioresconlaidea
deocultamiento,dandolugaralconceptodeobjetoencapsuladoquehoyconocemos.
LaclasedeSimula67puedeversecomoprecursoraalavezdelasclasesdelaPOO
actualydelostiposabstractosdedatosdeloslenguajesdelos70.
Elsegundohallazgofueelconceptodesubclase,cuyoobjetivoeraahorrardeclaraciones
cuandoelcomportamientodeunaentidaderaparecidoaldeotra.
Podramosdenirunaclasevehculoquedeclaraselosatributoscomunesatodoslos
tiposdevehculo.Despus,deniramosunasubclasedistintaparacadatipo,enlaque
sedeclararanlosatributosespeccosdecadauna.As,tendramossubclasespara
camiones,bicicletas,etc.
Entrminosdeimplementacin,alcrearunobjetodeunasubclaseBdeotraAse
generaunaestructuracondosniveles:unregistrocontienelasvariablesespeccasde
B,otrocontienelasvariablesdeAysecreaunpunterodelprimeroalsegundo.Este
mecanismosedenominaactualmenteherenciayesunadelascaractersticasdistintivas
delaPOOfrenteaotrosparadigmasdeprogramacin.
ElsiguientehitodelahistoriadelaPOO,yenrealidadelquelediocategorade
paradigmaconcaractersticaspropias,fueellenguajeSmalltalk.SucreadorfueAlan
Kay,delCentrodeInvestigacinenPaloAltodeXeroxCorporation.Tambineneste
casolagestacinfuelargaytrabajosa,desdeunaprimeraversinon1971hastala
versinpblicade1982.
Depadresilogoymadremsica,Kaydesarrollsuintersporloscomputadores
bastantetardeydeunmodofortuito.Estudimatemticasybiologaenlauniversidadde
Utah(EE.UU.),sededicalamsica,yacabenlaFuerzaArea,dondeaprendia
programar.En1967empezundoctoradoensuuniversidad,dondeconocidos
desarrollosqueinuiraneneldiseodeSmalltalk:
1)ElsistemaSketchpad(IvanSutherland,1963),primersistemagrcointeractivodela
historia.

2)EllenguajeSimula67,cuyocompiladorhubodeestudiarparahacerlofuncionaren
unaIBM1108.

FueelcontactoconSimulaelquelehizoconcebirlaideadeobjeto,alavezcomoun
enteautocontenidodotadodeunoscomportamientosespeccosydeunestadoprivado,
ycomounejemplaroconcrecindeunaclasedeobjetos.
Parareferirsealanocindeobjetoutilizaelsmildeunaclulaqueintercambiaseales

http://www.buenastareas.com/ensayos/HistoriaDeLaPoo/6037646.html 2/6
2/24/2016 HistoriaDeLaPooEnsayosuniversitariosLoezaf

consuentornoycuyamembranaleprotegededichoentorno.Aligualquetodaslas
clulascompartenunoscomportamientosbsicosperotambinpuedentener
comportamientosespeccosquediferencianaunasdeotras,unaclasedeobjetosdene
loscomportamientoscomunesypuedeespecializarseendistintassubclasesque
describen,cadauna,loscomportamientosaadidos.
Sutesisdoctoral,Lamquinareactiva,versabasobresuvisindeuncomputador
personal,deltamaodeunporttilactual,ydotadodepotentesgrcosinteractivospara
comunicarseconelusuario,enunapocaenquelascapacidadesdelasmquinaseran
muylimitadasysusvolmenesinmensos.MarchaCalifornia,pasdosaosenla
UniversidaddeStanfordtrabajandoenproyectosdeinteligenciaarticial,yentrdespus
enellaboratorioPaloAltoResearchCenterdeXeroxCorporation,dondecompletla
primeraversindeSmalltalken1971.
Guiadoporelobjetivodequelainterfazfueralomsintuitivaposible,ide
representacionesgrcasparamuchosdelosobjetos.Paraltodoeranobjetos.As,
loscheros,losdocumentos,losperifricos,etc,tenanunarepresentacinenlapantalla
enformadeiconosgrcos.
Laspantallaslimitadasacaractereseraninsucientesparasupropsito.Dotasus
computadoresdepantallasgrcasbasadasenpxelesydedicunprocesador
exclusivamentealatareadegobernarlosgrcosdelapantalla.
Losconveniosactualesdeventanassolapadasquepuedendesplazarse,ampliarse,
minimizarse,etc.sonobrasuyaydesuequipo.Crearonasunlenguajemuyintuitivo
deconvencionesgrcasparacomunicarseconelordenador.As,nosoloalumbraronun
nuevoparadigmadeprogramacin,sinoquefueronlospadresdelosnumerosos
sistemasoperativosbasadosenventanasgrcaseiconosquehicieronfurorapartirde
1985.
SussuperioresdeXeroxnosupieronverlarevolucinquesuponaestetipodesistemas
ynoapoyaronsustrabajosadecuadamente.Partedesuequipo,ymstardelmismo,
semarcharonalaempresaApple,entoncesincipiente,yaplicaronsusideasaldesarrollo
delosprimerosordenadorespersonalesMacintosh.
Creadordelaterminologayconceptosactuales:clase,ejemplar(instancia),objeto,
mtodo,atributo,mensaje,clasesabstractas,refinacindemtodos,vinculacindinmica.
Librerapredenidademsde70clasesysubclasesorganizadasjerrquicamente.Clase
Objectcomosuperclasedetodalajerarqua.Lostiposdedatosnumricosylas
estructurasdedatosconocidasaparecenorganizadosendichajerarqua.Concepcinde
latareadeprogramacincomoladereutilizaryextenderlajerarquaconnuevas
subclasesymtodos.Compilacinalcdigodebytesdeunamquinaabstracta
interpretada,loquediogranportabilidadallenguaje.Recolectordebasura.
ApartirdeSmalltalkydesulosofaasociadatodosonobjetos,librera,entornogrco

http://www.buenastareas.com/ensayos/HistoriaDeLaPoo/6037646.html 3/6
2/24/2016 HistoriaDeLaPooEnsayosuniversitariosLoezaf

seproduceunintersmuygrandeporelparadigmaylaPOOsedifundeampliamenteen
entornosindustriales.
Muchoslibrossobreingenieradelsoftwaredelos80ylos90asumenelparadigmay
hablandeconstruccin,diseoymodelizacinorientadosaobjetos.
Quizsellenguajeorientadoaobjetosquemsusuarioshatenido.Fuediseadopor
BjarneStroustrupyapoyadoposteriormenteporsuorganizacin,loslaboratoriosBellde
AT&T.
Sudesarrolloseextiendedesde1979hasta1992.TomideasdeSimula67,yaquesu
intencineraunirlascaractersticasorientadasaobjetosdeSimulaconlaecienciade
C.MsadelanteincorporideasdeAda,deMLydeSmalltalk.Deseabamejorarla
comprobacinestticadetiposdeCparahacerlomsseguro.
AntesdeC++,desarrollunlenguajepreprocesadoalquellamCconclases.Gener
paralunalibreradeclasesquefueelembrindelafuturalibreradeC++.
Paramejorarlaecienciapermitialgunosobjetosnoapuntadosporpunteros.Tambin
dejelmanejodelamemoriadinmicaenmanosdelprogramadorcomoenC,
renunciandoaunrecolectorautomticodebasura.
C++noesexactamenteunsuperconjuntodeC,sinoquetienealgunas
incompatibilidadesconeste.Dentrodeesteenfoquepragmtico,tampocoquisoqueC++
fueseunlenguajetotalmenteencerradoensuentornoalestilodeSimulaodeSmalltalk,
sinoquepudierallamarsedesdeC++aprogramasescritosenotroslenguajesy
viceversa.
Segnsuautor,estafueunadelasrazonesdesuxito.
Laversin1.0deC++(1983)aadasobreCconclases,laposibilidaddefunciones
virtualesydeoperacionessobrecargadasdenidasporelprogramador.
Unafuncinvirtualesunaoperacincuyotiposedeneenunaclaseperonose
implementaenella,sinoquelohaceensussubclases.
Siguieronlasversiones1.1(1986),1.2(1987)y2.0(1988).Enellasseaadieronlas
clasesabstractas,losllamadosmiembrosestticosylaherenciamltiple,queesla
posibilidaddequeunasubclaseloseademsdeunaclase.
En1990seinicilaestandarizacinporANSIeISOysuautorincluydosfacilidades
ms:lasplantillasyeltratamientodeexcepciones.Lasplantillassonclasesgenricasal
estilodeAda,quetienenunaomsclasescomoparmetros.Graciasalasplantillas,se
puedendenirenC++lasestructurasdedatosylosalgoritmosdeformagenrica.
EllenguajesedifundirpidamenteentodoslosentornosqueutilizabanC.Losusuarios
loaceptaroncomounamejoraencuantoaseguridadyamodularidadperoque,sin
embargo,lespermitalamismaexibilidadqueC.Dadosucarcterdecasi
superconjunto,muchosprogramasCfueronadaptadosconfacilidadaC++.Hacia1986,
lacomunidaddeusuariosalcanzabayavariosmiles.

http://www.buenastareas.com/ensayos/HistoriaDeLaPoo/6037646.html 4/6
2/24/2016 HistoriaDeLaPooEnsayosuniversitariosLoezaf

Ladcadadelos90havistonacerotrolenguajeorientadoaobjetos,Java,queseha
extendidocomolaplvorayquehareemplazadoenmuchasempresasaC++.Elxito
deJavaestligadoengranparteasuasociacinconInternetyaquetodoslos
navegadoresincluyenunintrpretedelamquinavirtualdeJava.Suorigensesitaen
unproyectosecretoiniciadoporSunMicrosystemsen1991,cuyoobjetivoeradesarrollar
controladoresparaaparatosdeconsumodomstico.Necesitabanunlenguajequese
ejecutaraenplataformasconvariadosprocesadores,pocosrecursosdememoria,sin
discoduro,ycuyocdigopudieraviajarporcable.
UnosprimerosintentosconC++lesconvencierondequeesteeraunlenguaje
demasiadovoluminoso.
JamesGoslingfueellderdelgrupoyelquediseellenguaje,alquellamOak.Tom
deC++ydeSmalltalklasfacilidadesqueconsidermsapropiadas.
En1993,elNationalCenterforSupercomputingApplicationslanzelprimernavegador
alestiloactual(Mosaic).ElgrupodeGoslingloclonenOakyleaadiposibilidadesde
animacin:IncluyeronpequeosprogramasOakalosquehoyllamamosapplets
dentrodeltextodelaspginasHTML.LellamaronWebRunner.

Enunapresentacinacomienzosde1995,WebRunnercausunahondaimpresin:
internetnoserayaunmeroalmacndetextospasivos,sinounacoleccinde
informacionesactivas,contodaslasposibilidadesdeanimacingrcaeinteraccin.En
algnmomentodeeseao,Sundecidipatentarellenguajeyseencontrconqueel
nombreOakyaestabaocupado.RpidamentedecidieroncambiarloaJava,nombre
relacionadoconlamarcadecafconsumidaporelgrupo.
Enmayode1995,SunpresentpblicamenteJavaenelcongresoanualSunWorld,en
elquelarecincreadaempresaNetscapepresentabasunavegador,queparaentonces
yaestabarevolucionandolared.EldirectordelaocinacientcadeSunyel
vicepresidentedeNetscapellegaronaunentendimientocomercial:losnavegadoresde
NetscapeincluiranlamquinaabstractadeJavayejecutarananimacionesmediante
appletsincrustadosenelcdigoHTML.
LatecnologaindependientedelaplataformadeJavaylosnavegadoresdeinternet,
parecanhechoselunoparaelotro.EnpalabrasdeGoslingfueunaincreblecasualidad
queseencontraranmutuamenteenelmismoprecisomomentohistrico.
Apartirdeeseanuncio,ydeladecisindeSundedifundirlibrementeelcdigodela
mquinaabstractaydelcompiladordellenguaje,Javaseexpandiconanmayor
rapidezqueC++.Elestilosintctico,ladecisindecomprobarestticamentelostiposyla
introduccindefuncionessobrecargadasestntomadasdeC++.Elserinterpretado,la
mquinaabstracta,laintroduccindeunrecolectorautomticodebasura,laobligacin
dequetodoslosobjetosseanapuntadosporpunterosylaherenciasimple,estn

http://www.buenastareas.com/ensayos/HistoriaDeLaPoo/6037646.html 5/6
2/24/2016 HistoriaDeLaPooEnsayosuniversitariosLoezaf

tomadosdeSmalltalk.
Javatienetambinmtodosabstractos(equivalentesalasfuncionesvirtualesdeC++),
clasesabstractas(lasquetienenalgnmtodoabstracto)yclasesinterfaz(lasquetien
todossusmtodosabstractos).Incorporacomonovedadlosmtodosnales(nopueden
serredenidosenlassubclases)ylasclasesnales(nopuedentenersubclases).La
innovacinprincipalfuedenirtiposdedatosindependientesdecualquierplataforma.En
Javahay,porejemplo,cuatrotiposdeenterosdenominadosrespectivamentebyte,short,
intylong.Sutamaohadesernecesariamentede8,16,32y64bits.Todaplataforma
hadesoportarestostipos,biendirectamente,obiensimulndolosporsoftware.Esta
decisinaseguraquelosprogramasseejecutarnexactamenteigualentodaslas
mquinas

http://www.buenastareas.com/ensayos/HistoriaDeLaPoo/6037646.html 6/6

Вам также может понравиться