🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #26143

Re: Realizar aplicaciones en Java.

#26143
From: Jonathan Revusky
Date: Thu, 04 Feb 1999 00:00
135 lines
6645 bytes

"Eladio Rinc�n" wrote:
> 
> Hola, me llamo Eladio, y llevo ya unos cuantos meses Licenciado en
> Inform�tica.
> Como de costumbre (no se si ahora ya lo hacen) en la Universidad Java s�lo
> se toca en el proyecto fin de carrera, por lo que yo nasti.
> 
> En primer lugar envio este mensaje desde la total ignorancia en cuanto al
> funcionamiento de las aplicaciones java.
> Llevo ya cierto tiempo programando en Visual Basic, y el otro d�a leyendo
> ofertas de trabajo, abundaban las referencia a Java, por lo que decid� echar
> un vistazo. Me pas� por java.sun.com, y me baj� el tutorial que hay (muy
> completo, por cierto). Llegu� a la conclusi�n de que el lenguaje no ser�a
> problema porque C y C++ est� superado.

La semejanza entre C y C++ es m�s que nada superficial. Ya que tienes la
carrera de inform�tica, me entender�s si digo que la sintaxis es m�s o
menos igual, pero la sem�ntica es muy distinta. Dicho en cristiano, eso
significa que se parece menos de lo que cabe suponer. 
 
> Las aplicaciones Java
> �qu� requerimientos necesita del sistema para que funcione con una velocidad
> aceptable?

La velocidad es m�s que nada un problema de implementaci�n que est�
siendo superada. La mala fama que tiene Java en ese aspecto se basa
mucho en el hecho de que las primeras implementaciones no llevaban
compilador JIT -- es decir, que era un lenguaje interpretado. Ahora, en
cualquier plataforma importante, Java es un lenguaje compilado y, como
estoy tomando la molestia de decir, no hay ning�n motivo te�rico para
que sea especialmente m�s lento que cualquier otro lenguaje. Es un
problema de implementaci�n. Incluso muchos expertos creen que las
implementaciones de Java compilado van a superar las implementaciones de
C/C++ dentro de poco por una variedad de motivos. Si quieres leer algo
interesante sobre el tema hay:

http://www.instantiations.com/jovefaq.html

Aqu� tienes un pasaje interessante:

-----

How fast will JOVE make Java programs run?

A major goal of JOVE is to take Java to FORTRAN-like levels of
performance (C++ performance simply isn�t good enough) for
programs that have thousands of classes and use millions of objects.

Why do you think JOVE will be able to achieve
Fortran-like performance?

For the last 30 years, the best optimizing compilers have been
written for FORTRAN. One reason for this is that the constructs of the
FORTRAN language are quite amenable to optimization while
languages like C and C++ have heavily used constructs
(unconstrained pointers, array/pointer semantics, etc.) that are very
difficult to optimize. While Java has a C-like syntax it lacks most of
the constructs that make C and C++ difficult to optimize.

Implementors who set their sights on C++ level performance are
shooting too low. The application of JOVE's object-oriented
optimizations result in a program that internally is very similar in
structure to a FORTRAN program and which can be optimized in a
similar manner.

----

La frase interesante arriba es la siguiente:

"Implementors who set their sights on C++ level performance are
shooting too low."

"Los implementadores que apuntan al nivel de performancia de C++ apuntan
demasiado bajo." (Mi traducci�n)

Se supone tambi�n que Sun va a sacar la m�quina virtual Hotspot en alg�n
momento en los pr�ximos meses. Seg�n la literatura sobre eso, los
implementadores de Hotspot tampoco piensan que el C/C++ sea su verdadera
competencia.

Dado que no hay ning�n motivo te�rico que impida hacer una
implementaci�n que iguala or incluso supera la velocidad de C++, y dado
el hecho de que los mejores expertos en compilaci�n/optimizaci�n est�n
trabajando en el tema, �que conclusi�n podemos sacar?
La conclusi�n que yo saco es que la velocidad de Java es un problema
transitorio.

Todo eso dicho, ahora mismo hay rincones en que s� que hay un problema
ahora -- especificamente las librer�as gr�ficas (Swing especialmente)
que, incluso si es mucho m�s agradable trabajar con ellas, no tienen la
performancia de librer�as nativas como MFC en general. No obstante, es
imposible hoy d�a comprar una m�quina nueva en que el Swing 1.1 tiene un
rendimiento insatisfactorio ya que no se vende ninguna m�quina que es
menos de Pentium 300 Mhz en todo caso. Si escribes aplicaciones lado
servidor que no tiene interfaz gr�fica, a todos fines pr�cticos Java no
representa un sacrificio de velocidad comparado con las otras opciones. 

El otro problema que hay es que las implementaciones t�picas de Java
necesitan mucho RAM para correr bien. Es posible que una parte de eso
sea inevitable, ya que la paradigma de programaci�n POO tiene una
tendencia a precisar m�s memoria. Pero existe el otro problema de que
las implementaciones actuales de la gesti�n de memoria son muy
ineficaces. 

> �Recomendais hacer aplicaciones Java?

Supongo que la gente en un foro as� no van a desanimarte.

> �qu� compiladores son recomendables?

Cualquiera. Coge el JDK de Sun para empezar.

> �qu� gestor de bases de datos se usa con Java?

Cualquiera. Todos implementar�n una interfaz JDBC. Lo que me fascina a
m� ahora es la combinaci�n Java/XML. XML tiene muchas posibilidad de
representar datos jer�rquicos de modo est�ndar.

> Yo que ya me he acostumbrado a incluir runtimes de vb, �necesita alg�n
> runtime java, o con el navegador es suficiente (igual estoy equivocado con
> la pregunta)?

Necesitas un runtime de Java instalado, el JRE en general, aunque van a
sacar cada vez soluciones a base de compilar ejecutables est�ticos
tambi�n. Habr� varias opciones.


Jonathan Revusky
-- 
Java and Delphi Consulting
Make your .class files double-clickable
with SmartJ
http://www.bigfoot.com/~crystalline.solutions
Technical Details
Message-ID: <36B9DFAB.55281C77@jet.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <79am6m$mga$1@talia.mad.ttd.net>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1116f3,e63f2f9a4fb21262
X-Google-Attributes: gid1116f3,public
From: Jonathan Revusky <jrevusky@jet.es>
Subject: Re: Realizar aplicaciones en Java.
Date: 1999/02/04
Message-ID: <36B9DFAB.55281C77@jet.es>
X-Deja-AN: 440671563
Content-Transfer-Encoding: 8bit
References: <79am6m$mga$1@talia.mad.ttd.net>
X-Accept-Language: en
Content-Type: text/plain; charset=iso-8859-1
X-Complaints-To: usenet@lola.ctv.es
X-Trace: lola.ctv.es 918151152 24751 194.224.180.94 (4 Feb 1999 17:59:12 GMT)
Organization: CTV/JET
Mime-Version: 1.0
Reply-To: jrevusky@bigfoot.com
NNTP-Posting-Date: 4 Feb 1999 17:59:12 GMT
Newsgroups: es.comp.lenguajes.java