Está en la página 1de 48

Ing.

Mario Urrutia Espinoza


E
V
O
L
U
C
I
N

D
E
L
O
S

L
E
N
G
U
A
JE
S

D
E

P
R
O
G
R
A
M
A
C
I
N
Programacin Electrnica 2
Tema 1 Fase 1
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
Agenda
2
EVOLUCIN DE LOS LENU!"ES DE P#O#!$!CIN
EVOLUCIN DE LOS LENU!"ES DE P#O#!$!CIN
2
P#O#!$!CIN O#IENT!D! ! O%"ETOS
P#O#!$!CIN O#IENT!D! ! O%"ETOS
&
"!V!
"!V!
'
INT#ODUCCIN
INT#ODUCCIN
1
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
&
Intro()ccin
Intro()ccin
1
Evolucin de los lenguajes de programacin
Evolucin de los lenguajes de programacin
2
Programacin orientada a objetos
Programacin orientada a objetos
&
Java
Java
'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

No debe confundirse Tcnicas


de Programacin con
Lenguajes de Programacin.

La Programacin Orientada a
Objetos (POO) es una tcnica de
programacin por o !ue puede
apicarse a agunos enguajes de
programacin.

La POO "o# en d$a se apica a


muc"os LP%
C C++
Pascal Delphi
Java
'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

&a# !ue dejar de ado todas as ideas


preconcebidas acerca de cmo debe
reai'arse un programa

La POO tiene mu# poco !ue (er con a forma


"abitua de programar.

)a se sabe !u es un objeto com*n # cmo


manipuaro. +i entiende a simiitud entre
os objetos de mundo f$sico # os
inform,ticos- a POO se "ar, m,s sencia.

.sto es o m,s dif$ci% "acer (er !u es a


POO- !uitarnos todas as ideas
preconcebidas sobre programacin
tradiciona.
*
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
+
E,ol)cin (e los leng)a-es (e .rogramacin
E,ol)cin (e los leng)a-es (e .rogramacin
2
Introduccin
Introduccin
1
Programacin orientada a objetos (POO)
Programacin orientada a objetos (POO)
&
Java
Java
'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Los enguajes de programacin se "an


desarroado en base a una idea% hacer que
la tarea de realizar pr!ra"a# #ea cada $ez
l "%# #i"ple& 'e(i)le * prta)le p#i)le.

+A "edida que #e $a, de#arrlla,d l#


le,!ua-e#& #e $a de#arrlla,d ta")i., la
p#i)ilidad de re#l$er pr)le"a# cada $ez
"%# c"ple-#/ E, la e$luci0, de cada
le,!ua-e& lle!a u, ""e,t e, el que l#
pr!ra"adre# c"ie,za, a te,er
di1cultade# a la hra de "a,e-ar pr!ra"a#
que #ea, de u, ciert ta"a2 *
#1#ticaci0,+/ (/ruce .c0e)
/
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

La e(oucin en os enguajes "a


(enido impusada por motores mu#
distintos%
i. Los avances tecnolgicos
ii. Los avances conceptuales !e planteamiento"
iii. Los avances en cuanto a en#o$ue !e la
programacin
0
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
.(oucin en cuanto a a tecnoog$a
.(oucin en cuanto a a tecnoog$a

1n computador es un sistema eectrnico


digita secuencia.

. microprocesador es a 2P1 de un
computador

1n programa es una sucesin de


instrucciones !ue se ejecutan
secuenciamente.

Para !ue e programa sea ejecutado por e


microprocesador debe ser eaborado en
binario.

.n a programacin pueden cometerse


muc"os errores (bugs) os cuaes deben ser
depurados.
1
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programar en binario es pr,cticamente


imposibe aun cuando se use como
aternati(a e sistema "e3adecima.

. primer a(ance importante (ino con a


aparicin de os enguajes ensambadores. A
estos enguajes se es ama de 4bajo ni(e4-
#a !ue se "aan estrec"amente igados a a
forma de trabajo de microprocesador.

Lo !ue "ace un enguaje ensambador es


transcribir unos nemnicos (paabras f,cies
de recordar) a una secuencia de 567 # 587 a
os !ue e nemnico representa # !ue s$ son
entendibes por e microprocesador.
12
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
11
Memoria
Direcci0,
I,#trucci0
,
%%%% %%%% %%%%
%%%%
%%%% &%%%
%%%% %&%%
%%%% %%%% %%%%
%%&%
%%%% &%%&
%%%% %&%&
%%%% %%%% %%%%
%&%%
&%%% %%%%
' '
Programa a bajo nivel
construido con nemnicos
Leng)a-e
Ensam3la(or
Microprocesador
0000 MOV A! 0"
000# MOV $! 0%
000" A&& A! $
' '
Incon,eniente4 Leng)a-es ensam3la(ores est5n 6)ertemente com.rometi(os con el micro.rocesa(or
Leng)a-e
$57)ina
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

. siguiente paso fue a aparicin de os


enguajes de ato ni(e.

. proceso de desarroo de una apicacin


con enguajes de ato ni(e es m,s r,pido-
simpe # resuta m,s f,ci detectar # corregir
errores- debido a%
Ca!a instruccin en lengua(e !e alto nivel pue!e
e$uivaler a varias !ecenas e incluso cientos !e
instrucciones en ensam)la!or.
La sinta*is !e las instrucciones + los nemnicos se
parecen algo m,s al lengua(e coti!iano.
12
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
1&
Memoria
Direcci0,
I,#trucci0
,
%%%% %%%% %%%%
%%%%
%%%% &%%%
%%%% %&%%
%%%% %%%% %%%%
%%&%
%%%% &%%&
%%%% %&%&
%%%% %%%% %%%%
%&%%
&%%% %%%%
' '
Programa a alto nivel :
Java
Leng)a-es Tra()ctores4
( Com.ila(ores
( Int8r.retes
public class Hello { public
static void main(String[]
args)
{ System.out.println("Hola
mundo"); } }
: :
Los compiladores se enla9an con otros
c(igos o .rogramas (e 3i3liotecas (el
LP es.ec:6ico ; se con,ierten en )n
arc<i,o e-ec)ta3le=
Los Intrpretes son tra()ctores 7)e no
.ro()cen co.ias com.letas ; >nicas (el
.rograma en leng)a-e m57)ina sino 7)e
tra()cen ; e-ec)tan el .rograma 6)ente
instr)ccin a instr)ccin
Leng)a-e
$57)ina
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Lenguaje de bajo ni(e (s enguaje de ato


ni(e%
Comple(i!a!' LP-./ m,s !i#0ciles !e programar $ue
LP-1/
Porta)ili!a!' LP-1/ mas #,ciles !e trasla!arlos a
otros entornos
2eloci!a! !e e(ecucin' Los LP-./ est,n
!irectamente relaciona!os con el har!3are por lo
$ue se e(ecutan m,s r,pi!o.
Depuracin' M,s sencillo encontrar + corregir
errores en LP-1/
1'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

+e re9ere a a
metodoog$a usada para a
programacin%
i. Programacin lineal
ii. Programacin estructura!a
iii. Programacin 4rienta!a al
4)(eto
1*
.(oucin en cuanto a a
conceptuai'acin
.(oucin en cuanto a a
conceptuai'acin
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programacin inea%
Ca!a l0nea !e programa !e)e ir prece!i!a !e un
i!enti5ca!or eti$ueta" para po!er re#erenciarla.
La programacin en ensam)la!or es lineal6 es
!ecir6 las instrucciones se e(ecutan en el mismo
or!en en $ue #ueron escritas.
Pue!e sin em)argo alterarse este or!en hacien!o
saltos !es!e una instruccin a otro lugar !el
programa !istinto al $ue continua)a.
E(emplo' .asic instruccin 7oto"
1+
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
E(emplo' Programa $ue muestra los n8meros !el & al
&%% seu!oc!igo"'
( Este sistema !e tra)a(o es complica!o6 pues o)liga al
programa!or a retener en su ca)eza permanentemente to!o
el c!igo escrito hasta un momento !etermina!o para po!er
seguir escri)ien!o el programa9 a!em,s a la hora !e leerlo6 el
programa!or se :pier!e; con #acili!a! por$ue !e)e ir
saltan!o continuamente !e unos trozos !e c!igo a otros.
1/
. Hacer una variable igual a !
". Sumar a esa variable
#. $ostrar la variable
%. Si la variable es !! &' terminar( si)no &' saltar a
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programacin estructurada
2eamos el mismo seu!oc!igo !el e(emplo anterior
con programacin estructura!a'
<e intenta $ue el programa!or pue!a hacer
programas ca!a vez m,s e*tensos sin per!erse en
un entrama!o !e l0neas !e c!igo
inter!epen!ientes.
Los saltos est,n altamente !esaconse(a!os
10
Hacer una variable igual a !
$ientras *ue sea menor *ue !! &' sumar y mostrarla
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
Junto con la programacin estructura!a aparece el
concepto !e 3u,ci0,6 el cual permite construir
programas m,s amplios con menor es#uerzo.
La i!ea es simple' muchas veces se realizan
procesos $ue se repiten + en los $ue slo cam)ia
alg8n #actor. El proceso se trata como un
su)programa al $ue se llama ca!a vez $ue se
necesita6 + ca!a vez $ue se llame pue!e cam)iarse
ese #actor'
( <e re!uce el margen !e error al re!ucir el n8mero !e
l0neas $ue necesita el programa
( De ha)er alg8n #allo en el proceso6 el error $ue!a
circunscrito al trozo !e c!igo !e la #uncin.
11
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
Las #unciones son :ca(as negras; $ue reci)en +
!evuelven valores. <olo ha+ $ue programarlas una
vez6 pro)arlas por separa!o + compro)arlas $ue
#uncionan. Una vez termina!as6 pue!e olvi!arse !e
cmo se hicieron + usarlas cuan!o $uiera.
=am)i>n aparece el concepto !e $aria)le# de
%")it reducid. 1ntes6 cual$uier varia)le usa!a6
era conoci!a en to!o el programa generan!o una
in5ni!a! !e varia)les. Con un lengua(e
estructura!o6 las varia)les son conoci!as solo por
a$uellas partes !el programa !on!e nos interesa
$ue lo sean6 pu!ien!o re-usar los nom)res !e las
varia)les sin $ue ha+a con?icto.
22
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programacin Orientada a Objeto


4#rece mucho ma+or !ominio so)re el programa
li)er,n!onos a8n m,s !e su control. @asta ahora6 el
control !el programa era tarea !el programa!or $uien
ten0a $ue controlar + mantener en su mente ca!a
proceso $ue se realiza)a + los e#ectos colaterales $ue
pu!ieran surgir entre estos colisiones".
En P446 el programa se controla a s0 mismo + el
programa!or se li)era enormemente pu!ien!o
realizar aplicaciones mucho m,s comple(as al e*igir
menor es#uerzo !e atencin6 +a $ue los o)(etos son
enti!a!es autnomas $ue se controlan a s0 mismos.
Esto es posi)le por$ue los o)(etos nos impi!en
mezclar sus !atos con otros m>to!os !istintos a los
su+os
21
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
En programacin estructura!a6 una #uncin tra)a(a
so)re unos !atos6 + no !e)er0a mo!i5car !atos $ue
no le correspon!e hacer6 pero !e eso tiene $ue
encargarse el programa!or.
En P44 es el propio sistema !e tra)a(o el $ue
impi!e $ue esto ocurra. 1!em,s6 la re-usa)ili!a!
!el c!igo escrito es mucho ma+or $ue con el uso
!e #unciones6 + las porta)ili!a! es tam)i>n ma+or.
22
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

La e(oucin de os enguajes de
programacin- en cuanto a enfo!ue es
tambin una e(oucin conceptua- pero
sta es tan profunda !ue supone un cambio
dr,stico en cuanto a modo de concebir e
tratamiento de a programacin.

.n este sentido- e3isten tres enfo!ues


diferentes%
i. Programacin proce!ural
ii. Programacin !eclarativa
iii. Programacin orienta!a a o)(etos
2&
.(oucin en cuanto a enfo!ue
.(oucin en cuanto a enfo!ue
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programacin Procedura
Casi to!os los lengua(es $ue conocemos tra)a(an !e
#orma proce!ural' Java6 C6 Pascal6 .1<IC6 Co)ol6
Aortran6 Clipper6 etc.
En estos lengua(es ha+ $ue esta)lecer hechos
!atos"6 reglas para el mane(o !e esos !atos + ha+
$ue in!icarle al lengua(e cmo alcanzar el o)(etivo
$ue se persigue6 es !ecir6 !on!e )uscar la
in#ormacin6 cmo manipularla6 cuan!o parar6 etc.
<i sa)e programar en alg8n lengua(e proce!ural6
to!o esto parecer, o)vio6 pero no #unciona as0 con
los lengua(es !eclarativos
2'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programacin :ecarati(a
El programa $ue representa este tipo !e
programacin es el ProLog.
ProLog es acrnimo !e PB4gramming in L47ic. Este
lengua(e #ue !esarrolla!o en la universi!a! !e
Marsella hacia &CD% por 1lan Clomerauer + sus
colegas.
ProLog6 se )asa en manipulaciones lgicas6 esto es6
utiliza la lgica proposicional -lgica !e pre!ica!os-
para realizar sus !e!ucciones.
2*
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
En PrL! no se programa6 sino $ue se !eclara
hechos. Es la ma$uinaria !el lengua(e $uien se
encarga !e e*traer las conclusiones $ue resulten
in#eri)les !e estos hechos.
1 esta ma$uinaria se le llama "tr de i,3ere,cia#6
$ue es el corazn !e un <istema E*perto6
pro)a)lemente la aplicacin m,s !i#un!i!a !e la
Inteligencia 1rti5cial.
2+
++ declaraciones
padrede(,-uan,( ,maria,). + -uan es padre de maria
padrede(,pablo,( ,-uan,). + pablo es padre de -uan
++ reglas
+ . es /i-o de 0 si 0 es padre de .
/i-ode(.(0) :& padrede(0(.).
+ . es abuelo de 0 si . es padre de 1 y 1 es padre de 0
abuelode(.(0) :&
padrede(.(1)(
padrede(1(0).
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Programacin orientada a objeto.


Una t>cnica !e programacin no es un lengua(e6
pero pue!e aplicarse a cual$uier lengua(e.
Pue!e !e5nirse como un con(unto !e t>cnicas +
reglas a seguir para hacernos la tarea !e programar
m,s #,cil.
1!em,s6 son conse(os !e e*pertos programa!ores6
$ue tras aEos !e tra)a(o6 han acumula!o gran
e*periencia.
Estas t>cnicas son in!epen!ientes !el lengua(e en
$ue tra)a(emos
2/
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
Un lengua(e !e programacin6 es un con(unto !e
instrucciones enten!i)les !irectamente o
tra!uci)les al lengua(e !el computa!or.
Com)inan!o estas instrucciones se realizan
programas.
Para po!er aplicar P44 al &%%F6 es necesario $ue
el lengua(e nos proporcione una serie !e
mecanismos inherentes al propio lengua(e.
En cual$uier caso6 la P44 es casi &%%F proce!ural
+ no es en a)soluto !eclarativa
20
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
21
Programacin orienta(a a o3-etos ?POO@
Programacin orienta(a a o3-etos ?POO@
&
Introduccin
Introduccin
1
Evolucin de los lenguajes de programacin
Evolucin de los lenguajes de programacin
2
Java
Java
'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

LA POO%
/4 E< un sistema !e comunicacin con
programas )asa!os en mouse6
ventanas6 iconos6 etc.
( Como normalmente los lengua(es !e P44
suelen presentar estas caracter0sticas +
ha)itualmente estos entornos suelen
!esarrollarse con t>cnicas !e P446 algunas
personas tien!en a i!enti5car P44 +
entornos !e este tipo.
&2
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
/4 E< es un lengua(e !e programacin.
( Las t>cnicas !e P44 pue!en utilizarse en cual$uier
lengua(e conoci!o + $ue est> por venir6 aun$ue estos6
incluir,n #acili!a!es para el mane(o !e o)(etos.
( En los lengua(es $ue prev>n el uso !e o)(etos6 la
implementacin !e las t>cnicas !e P44 resulta mucho
m,s #,cil + provechosa $ue en los otros. Pero !el
mismo mo!o6 se pue!en utilizar estos lengua(es sin
$ue los programas resultantes tengan na!a $ue ver
con la P44.
&1
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

La POO es un conjunto de tcnicas !ue


permiten incrementar e proceso de
produccin de soft;are- aumentando a
producti(idad # permitiendo abordar
pro#ectos de muc"a ma#or en(ergadura.

2on estas tcnicas- aseguramos a re<


usabiidad de cdigo- es decir- os objetos
!ue "o# escribimos- si est,n bien escritos-
nos ser(ir,n para 4siempre4.
&2
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

&asta a!u$- no "a# ninguna diferencia con


as funciones- una (e' escritas- estas nos
sir(en siempre.

Pero es !ue- # esto s$ !ue es inno(ador- con


POO podemos re<usar ciertos
comportamientos de un objeto- ocutando
a!ueos otros !ue no nos sir(en- o
rede9niros para !ue os objetos se
comporten de acuerdo a as nue(as
necesidades
&&
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

.jempo% si tenemos un autom(i #


!ueremos !ue sea m,s r,pido- no
construimos uno nue(o= simpemente e
cambiamos e carburador por otro m,s
potente- cambiamos as ruedas por otras
m,s anc"as para ma#or estabiidad # e
a>adimos un sistema turbo- pero seguimos
usando todas as otras pie'as.

:esde e punto de (ista de a POO ?@u


"emos "ec"oA
@emos mo!i5ca!o !os cuali!a!es m>to!os" !e
nuestro o)(eto' el car)ura!or + las rue!as.
@emos aEa!i!o un m>to!o nuevo' el sistema tur)o.

.n programacin tradiciona- nos


"ubisemos (isto obigados a construir un
autom(i nue(o.
&'
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

.n trminos de POO- si se !uiere construir


un objeto !ue comparte ciertas cuaidades
con otro #a creado- no se tiene !ue (o(er a
crearo desde e principio= simpemente- se
de9ne qu. #e quiere u#ar del a,ti!u e, el
,ue$ # qu. ,ue$a# caracter4#tica# tie,e el
,ue$ )-et/

2on POO se puede incorporar objetos !ue


otros programadores "an construido #-
adem,s- se puede modi9car os
comportamientos de os objetos construidos
por otros programadores #i, te,er que
#a)er c0" l# ha, c,#truid/
&*
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
Trabajo pr,ctico%
Presentacin en formato B... paper (C coumnas)

&istoria de a POO

2oud computing

Deb C.6 # ;eb E.6


&+
Laboratorio

Femoria 1+/
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
&/
"a,a
"a,a
'
Introduccin
Introduccin
1
Evolucin de los lenguajes de programacin
Evolucin de los lenguajes de programacin
2
Programacin orientada a objetos (POO)
Programacin orientada a objetos (POO)
&
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

2reado en 8GG8 por +un Ficros#stems


(Hames Iosing) para dispositi(os
eectrnicos% cacuadoras- microondas #
tee(isin interacti(a.
.a(a potencia !e c,lculo
Usa poca memoria
Distintas CPUs

2onsecuencias%
Lengua(e sencillo $ue genera c!igo re!uci!o
Lengua(e $ue es in!epen!iente !e la plata#orma
&0
Bntroduccin
Bntroduccin
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

.jecucin de Ha(a como%


1plicacin in!epen!iente
1pplet aplicacin !entro !el navega!or
al cargar la p,gina Ge)"
<ervlet aplicacin e(ecuta!a en un
servi!or !e Internet6 sin inter#az gr,5ca".
&1
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Actuamente es un Lenguaje de
Programacin de propsito genera

Fu# popuar # usado para apicaciones


generaes # apicaciones ;eb e internet-
dispositi(os # redes de comunicaciones
como%
<ervi!ores 3e)
.ases !e !atos
<istemas !e in#ormacin geogr,5ca <I7"
=el>#onos mviles
<istemas !e tele!eteccin
1sistentes !igitales
<istemas me!ioam)ientales
'2
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Ha(a no so es un LP sino una pataforma


competa para e desarroo de soft;are
pues dispone de una bibioteca gigantesca
de cases # apicaciones con numerosos
cdigos reutii'abes.

Posee un entorno de ejecucin de ata


caidad # a>ade propiedades de gestin
autom,tica de memoria # soporte de
apicaciones mutimedia.

Fas f,ci de aprender pues se "an


eiminado agunas caracter$sticas compejas
de a POO como "erencia m*tipe-
punteros- sentencias goto- etc
'1
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Ha(a se "a creado pensando en a


independencia de as pataformas # de as
computadoras por eo se "a creado e
concepto de F,!uina Jirtua Ha(a

Para !ue os programas escritos en Ha(a


puedan ejecutarse primero deben
traducirse a un enguaje intermedio
)*tecde # uego se interpretan a un
enguaje m,!uina espec$9co.

. programa !ue traduce as instrucciones


escritas en Ha(a a b#tecode es un
compiador.
'2
F,!uina Jirtua HAJA (HJF)
F,!uina Jirtua HAJA (HJF)
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

.ntonces- a HJF es una m,!uina "ipottica


!ue emua por soft;are una m,!uina rea.
.s de9nida por una especi9cacin.
Con(unto !e instrucciones !e m,$uina C.4." +
4peran!os
Pila
Memoria
...

. compiador genera b#tecodes


(instrucciones de cdigo ma!uina para a
HJF)

. interprete traduce # ejecuta os


b#tecodes para cada m,!uina espec$9ca.
'&
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza
''
Com.ila(or
Int8r.rete
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Los programas Ha(a son de f,ci


portabiidad e independientes de a 2P1
sobre as !ue se ejecutan.

La HJF es una computadora (irtua cu#o


enguaje m,!uina es e b#tecode.

.3isten numerosas m,!uinas (irtuaes


disponibes para un gran n*mero de
pataformas !ue permiten a os programas
ser independientes de a m,!uina%
Un programa compila!o en U/IH pue!e
e(ecutarse en Gin!o3s D o Macintosh
'*
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

. i,terprete de Ha(a traduce instruccin


por instruccin e b#tecode en e tipo
espec$9co de enguaje m,!uina de 2P1 # a
continuacin se ejecuta a instruccin- por
tanto so necesita un tipo de intrprete
para cada tipo de 2P1

.n e caso de 2KK- e compiador traduce e


cdigo competo por o !ue necesita un
compiador diferente para cada tipo de
m,!uina
'+
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Los intrpretes son m,s sencios !ue os


compiadores- aun!ue m,s entos.

Tambin Ha(a incu#e ampias bibiotecas de


cases incorporadas !ue (ienen con os
entornos de desarroo H:L (Ha(a
:e(eopment Lit) # contienen centenares
de cases integradas con miares de
mtodos
JDI Java Development Iit"' programas + li)rer0as
para !esarrollar6 compilar + e(ecutar programas
Java
'/
Programacin Electrnica 2
Ing. Mario Urrutia Espinoza

Lenguaje de f,ci uso orientado a objetos

Lenguaje compiado e interpretado

Maciita un entorno interpretado%


2eloci!a! !e !esarrollo no !e e(ecucin"
Porta)ili!a! !el c!igo

.jecucin de mutitareas

2ambios din,micos en tiempo de ejecucin

+eguridad de cdigo.
'0
2aracter$sticas de Ha(a
2aracter$sticas de Ha(a