Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: Chamanik en 11 Diciembre 2010, 16:26 pm



Título: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Chamanik en 11 Diciembre 2010, 16:26 pm
Me queria presentar primero en el foro. Pero no he visto el apartado. Aprovecho entonces para manderles un saludo a todos los foreros y al staff.

Me quiero iniciar en esto de la programacion. Pero me lo voy a tomar con calma. Es decir, no voy hacer de ello mi profesion. Por lo tanto, quiero disfrutar aprendiendo sin presion. Despues de leer por encima algunos lenguajes y tutoriales, creo que me voy a decidir por JAVA. Esta claro que lo primero es aprender algoritmos, diagramas y POO. Tener paciencia y motivacion. Eso lo digo para no parecer el tipico: "Quiero aprender JAVA en un fin de semana..."

Pero este lenguaje (JAVA) siempre a tenido fama de ser "pesado" por los recursos que consume y los requisitos que necesita. En cambio, el C, siempre lo ponen por las nubes. Parece que sea un lenguaje mistico. Segun leo, es un poco tedioso y dificil para aprender (el tema punteros y tal...)

Esta claro que mejor no tocar lenguajes visuales y de ese tipo. Mas que nada por los consejos (creo acertados) que se dan en este foro. Se que son lenguajes muy validos. Pero quizas, para los que ya dominan la programacion y quieren tener un descanso con estos entornos de programacion.

Recomiendan mucho Python. Un tiempo estuve "trasteando" con el. Pero me hice un lio con la ventana de comandos, las IDEs y demas historias. Quizas fue culpa mia, ya que dispone de bastante documentacion. No se...

En cambio JAVA tiene ese aire al C, pero mas cercano al que quiere aprender desde cero. Quizas, de una forma mas amigable.

El tema de la "pesadez" de JAVA es notorio en algunos programas. Muchos usuarios argumentan: "Jo, si que tarda en abrir el programa" y otros contestan: "Es normal. Es JAVA"

¿Esto depende de JAVA o del ordenador de que disponemos?

Resumiendo: Si descarto C ¿Me recomendais JAVA o Python?

Gracias...


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 11 Diciembre 2010, 16:49 pm
El tema de tratar a un lenguaje como lento es muy rebuscado... No interesa que el programa sea rapido o lento, sino que sea, "suficientemente rapido para" realizar cierta tarea...

Para la gran mayoria de las tareas comunes q te vas a encontrar, java si va a ser mas lento que ( un codigo decente ) de C o C++... pero va a ser mas rapido que otros lenguajes, por ejemplo un python interpretado... y va a ser suficientemente rapido como para tener un programa hecho en java que funcione bien y cumpla su objetivo en un tiempo adecuado.

Otro tema a tener en cuenta es la facilidad de programacion y mantenimiento, de poco me sirve programar un script en C en 3 horas, que en python por ejemplo uno lo hace en 40 minutos...
C esta muy bueno para realizar codigo y funciones que hagan un uso intensivo de CPU.

Otro tema es que el bytecode de java no lo tenes q recompilar cuando cambias de plataforma... y el codigo de C++ si...

Como lenguaje para aprender, depende, JAVA o PYTHON ( el q mas me gusta recomendar ) si vas a programar como hobby, cosas simples... en cambio eligiria C++ si va a ser tu carrera a seguir ( en especial por el tema punteros, en general suele dar un poco de panico cuando uno no los entiende bien, pero despues resultan naturales y hasta se los extraña si no los tenes; y por el manejo de memoria manual no administrado; estos temas suelen ser bastante complicados de entender y acostumbrarse rapido para el programador que no lo sufrio nunca por programar en java por ejemplo ).


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Chamanik en 11 Diciembre 2010, 17:45 pm
Gracias por la respuesta. De echo, lo que me tira un poco para atras (en JAVA y C) es el tema de los corchetes, llaves y espacios en los codigos fuente. El Python me recuerda mas al Basic y lenguajes estructurados.

Haces referencia que el JAVA no puede llegar a donde llega el C ¿Eso quiere decir que JAVA no puede hacer todo tipos de programas como C? Es decir, no puede hacer videojuegos o sistemas operativos ¿El JAVA es solo para crear programas de gestion, webs y cosas de ese estilo?

Lo que me atrae del Python es que va al grano y es directo. Me fastidia tener que poner tanta sintaxis, corchetes, llaves y tabulaciones para escribir una misera palabra en la pantalla.

El echo de decidirme por JAVA es por que hay mas videotutoriales en la red y bastante mas documentacion (comparado con Python).  Pero para mi, resulta mas compresible el lenguaje Py que el JAVA. O al menos interpretar un codigo fuente.



Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 11 Diciembre 2010, 20:12 pm
Citar
Gracias por la respuesta. De echo, lo que me tira un poco para atras (en JAVA y C) es el tema de los corchetes, llaves y espacios en los codigos fuente. El Python me recuerda mas al Basic y lenguajes estructurados.
No te creas, el tema de los corchetes te acostumbras enseguida y son mucho mas claros que lo que pensas. En general el que puede llegar a hacer desastres con los corchetes es un programador desprolijo. Si uno tabula bien el codigo, comenta y es ordenado como declara las variables y en los nombres que usa, no es mucho mas complicado leer el codigo en C que en python.

Citar
Haces referencia que el JAVA no puede llegar a donde llega el C ¿Eso quiere decir que JAVA no puede hacer todo tipos de programas como C? Es decir, no puede hacer videojuegos o sistemas operativos ¿El JAVA es solo para crear programas de gestion, webs y cosas de ese estilo?
El tema que tiene C y C++ sobre Java, es la posibilidad de acceder a los recursos de bajo nivel de manera directa, o de usar "inline assembly" en el medio del codigo. Podes hacer mejoras de performance como alinear bien la memoria, usar registros xmm y un monton de cosas de bajo nivel de las que en java no tendrias manejo (por lo menos directamente). Otro tema es, que si vas a seguir de carrera ingenieria en informatica o licenciatura en ciencias de la computacion, C++ suele ser el lenguaje base, porque sirve para todo, desde las materias de sistemas operativos, bases de datos (armarlas, no conectarse una base de datos), redes, y materias basicas como algoritmos y estructuras de datos...

Experiencia mia: Yo tuve compañeros en la facultad que programaban (y trabajaban y vivian de eso) en Java desde hacia años, y yo que no trabaje nunca, y aprendi C++ de libros (TUTORIALES NO! LIBROS SI!) , no tube ningun problema cuando llegaba la parte de implementacion de los tps, en cambio ellos tenian perdidas de memoria, y "Segmentation faults" por no saber manejarla bien, por no entender bien los ciclos de vida de las variables y por no tener un buen conocimiento de punteros, debido a q Java se encarga de todo eso por su cuenta.

Citar
Lo que me atrae del Python es que va al grano y es directo. Me fastidia tener que poner tanta sintaxis, corchetes, llaves y tabulaciones para escribir una misera palabra en la pantalla.
Python lo q tiene de lindo (para mi) es q te obliga a tabular (haciendo el codigo de los principiantes un poco mas legible), y es muy practico y rapido para crear scripts interesantes. Ademas tiene una libreria estandard GIGANTE! donde tenes desde RPC, Sockets, Serializacion, Threads, Base64, Zlib, y cosas de las que en C++ o buscas una libreria de terceros o lo programa uno a mano. (y ademas es portable el codigo y no depende del SO en general)

Citar
El echo de decidirme por JAVA es por que hay mas videotutoriales en la red y bastante mas documentacion (comparado con Python).  Pero para mi, resulta mas compresible el lenguaje Py que el JAVA. O al menos interpretar un codigo fuente.
De python tambien hay muchisimo, pero lo mejor de todo, no son los videos tutoriales, lo mejor son los libros.. imprimirse uno y leerlo... La idea del tutorial no es enseñar un lenguaje de programacion, sino la de dar una breve introduccion, no suelen profundizar mucho en algunos temas que mas adelante se vuelven importantes... Ademas los libros de introduccion suelen explicar también como hacer el debugging y te enseñan a manejar algun IDE en particular.


PD: en mi facultad (estudio licenciatura en ciencias de la computacion en la universidad de buenos aires), en la primer materia de programacion, uno ve un lenguaje de especificacion (medio flojo es, es pura logica de primer orden), un lenguaje funcional (HASKELL TE AMO) y un lenguaje imperativo (C++), todo en 4 meses y da un TP de cada uno. De esos ultimos 2 lo que mas rescato es q haskell te enseña a hacer funciones recursivas eficientes y enfermas, y que C++ me sirvió para todo (y sabiendo bien C++ no es muy dificil programar en cualquier otro lenguaje imperativo!, el paradigma funcional es otro mundo).


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: brock en 14 Diciembre 2010, 22:49 pm
Java  lo enseñan en las universidades por que las empresas viejas necesitan programadores javeros para renovar sus programas y  es mas barato modificarlo que crear uno nuevo.

Java es muuuuuuuuuy tedioso en plan llaves y cosas de esas..
Y al fin y al cabo ¿que es java?
Lo bueno es C y C++ que son casi clones
Yo estoy aprendiendo Visual Basic.net
¿Que es vb.net o C#.net?
Super lenguajes de programacion  faciles y rapidos de programar, puedes programar cosas muy rapidamente y facil de depurar.
Lo malo es que es lento, por que  no es codigo administrado.

Aqui entra en juego C o C++
Son lenguajes No administrados, usease tienes que encargarte tu de escribir y liberar memoria, pero es muuuuy rapido comparado con .net.

Solucion = Fusion
Desde .net puedes llamar a tus .dll creadas en C o  C++
Usease, si quieres hacer 5 tonterias, pues las haces en  .net y si quieres hacer algo que consume mucho, pues lo haces en C o C++
 
Conclusion ¿Para que sirve java? Si puedes conbinar C y C++  que son lenguajes mas rapidos y pontentes que Java con .net que es facil y rapido de programar.

Linux esta programado en C windows en C  y asm, conclusion C es mejor que Java y .net es mas rapido que java y C usease coges los 2 extremos rapidez y velocidad, pero bueno .net no es tan lentooo, simplemente que cosas pesadas, pues las haces en C o C++


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 15 Diciembre 2010, 00:03 am
Citar
Java  lo enseñan en las universidades por que las empresas viejas necesitan programadores javeros para renovar sus programas y  es mas barato modificarlo que crear uno nuevo.
C# y VB.net no? m...

Citar
Java es muuuuuuuuuy tedioso en plan llaves y cosas de esas..
Y al fin y al cabo ¿que es java?
Y q es java al fin y al cabo? llaves? C++ y C no son tediosos en el tema de llaves? aca estas recomendando python y haskell q no usan llaves?

Citar
Lo bueno es C y C++ que son casi clones
C++ se puede decir q es una extensión de C, pero ser clones es ser equivalentes y no es asi...

Citar
Yo estoy aprendiendo Visual Basic.net
¿Que es vb.net o C#.net?
Super lenguajes de programacion  faciles y rapidos de programar, puedes programar cosas muy rapidamente y facil de depurar.
Lo malo es que es lento, por que  no es codigo administrado.
Justamente ES codigo administrado, tiene casi las mismas pros y contras q Java (aunque tengan sus diferencias) respecto de C y C++...

Citar
Aqui entra en juego C o C++
Son lenguajes No administrados, usease tienes que encargarte tu de escribir y liberar memoria, pero es muuuuy rapido comparado con .net.
Tambien tenes acceso directo al hardware (con las restricciones q te ponga el sistema operativo).

Citar
Solucion = Fusion
Desde .net puedes llamar a tus .dll creadas en C o  C++
Usease, si quieres hacer 5 tonterias, pues las haces en  .net y si quieres hacer algo que consume mucho, pues lo haces en C o C++

Tambien se puede hacer esto en Java o en Python o en Ruby o en Lua o en Perl o en PHP o en D o en Haskell o en Smalltalk o en casi todos los lenguajes de programacion... La gran mayoria de los lenguajes de programacion exponen un API de C... y existen sus wrapers para C++...

Citar
Conclusion ¿Para que sirve java? Si puedes conbinar C y C++  que son lenguajes mas rapidos y pontentes que Java con .net que es facil y rapido de programar.
y para que sirve .net? si podes combinar Python con C++? y Java no es mucho mas complicado q C#...

Citar
Linux esta programado en C windows en C  y asm, conclusion C es mejor que Java y .net es mas rapido que java y C usease coges los 2 extremos rapidez y velocidad, pero bueno .net no es tan lentooo, simplemente que cosas pesadas, pues las haces en C o C++
Linux y windows y la gran mayoria de los sistemas operativos estan programados en C y asm (lo minimo posible asi es mas facil portarlo a otras arquitecturas)... pero eso no implica q C sea mejor q java, son 2 lenguajes diseñados para cosas distintas...

Tenes muy arriba a todo .NET y opinas cualquier cosa, ademas apenas se te puede entender q escribís...


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: brock en 15 Diciembre 2010, 00:46 am
Pues yo creo que no me has entendido, simplemente que con Java por ejemplo no se pueden crear drivers, con C si, osea C es mejor que java, cuando he dicho que  C y C++ son casi clones es para que no parezca que hay que aprender 2 idiomas, ya que son casi lo mismo.
Y sinceramente, veo mejor aprender C donde puedo crear mis drivers que Java.
Y si quiero programar rapido, alguna aplicacion VB.net me da la oportunidad, he matizado que en .net se podian usar las apis de C por que como es codigo administrado y C no lo es pues para despejar dudas.
Java y C es como PHP y ASP.NET
Ambos funcionan bien, pero esta claro que C y ASP.Net es mejor

Historia...:
El otro dia estaba intentado sacar un link de una web (cree un estractor de enlaces), y cuando mire el codigo de fuente ZAS! una pedazo de encriptazion Javascriptineana ¡BRUTAL!
Adivina como saque el link...
Puse un .WebBrowser y use esto Document.Links(1).InnerHtml , increibe la saque en medio segundo, claro que podrias hacer eso en java, pues animo xD yo lo hago en .Net y no tengo que currarme el desencriptador.

Con este  ejemplo demuestro que VB.net es mas facil que Java...
y bueno, creo que es logico que C es mejor que Java.


Enserio disculpas a quien piense lo contrario, quizas sea un poco idealista (lo reconozco), por eso pido disculpas, pero simplemente hablo lo que siento, jamas dire que yo tenga razon o este en lo cierto, simplemente doy mi opinion, si fusiono la potencia de C con la rapidez a la hora de programar de .net no necesito java.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 15 Diciembre 2010, 00:56 am
El tema es que seguis idealizando a VB.net sin poner ningun fundamento en concreto... Comparas a Java con C y aparece .net de la nada y salis deciendo q es facil y simple... bueno, JAVA tambien! y Python tambien, y php tambien...

Te repito C no es mejor q java... estan hechos para cosas distintas... siguiendo tu linea de pensamiento C es mejor q .net... y pascal es mejor q .net... y casi cualquier lenguaje q compile a codigo de maquina es mejor q .net... pq te permite hacer drivers y hacer SO...

Y con el ejemplo q das no demostraste nada, solamente demostraste q lo podes hacer en VB.net... Tambien hablas de que ASP.net es mejor q php sin dar ningun fundamento...


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Blitzkrieg' en 15 Diciembre 2010, 00:57 am
Por Dios, cuando sera que la gente va a entender que C y Java no son competidores. Estan hechos para cosas distintas!  :-\

EDITO: ASP.NET jamas sera mejor que PHP.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Dnk! en 15 Diciembre 2010, 01:24 am
Jaja aqui estan todos locos, pero que digan que asp mejor que php  :rolleyes:

Para cada situacion un lenguaje es mejor que otro. No se puede genarlizar. Porque si quieres implementar una interfaz grafica no vas a utilizar C/C++ porque sea mas rapido que C#,Java...

Tengan conciencia y no idealicen. Pensar en la gran variedad que tenemos en lo que a lenguajes se refiere y la libertad de eleccion. Una ventaja... no un inconveniente.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Lunfardo en 15 Diciembre 2010, 01:45 am
me da asco lo poco estricto que es PHP , pero de ahi que sea mejor que asp.net ?


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: ABDERRAMAH en 15 Diciembre 2010, 08:31 am
Java es un gran lenguaje, lo he trasteado y yo vengo de .net, no hagais caso a brock, es un lenguaje muy muy versatil y potente, y su ide es... que decir, maravilloso.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: brock en 15 Diciembre 2010, 11:23 am
He programador en PHP mucho tiempo, hará medio año o así que empece en asp.net y no tiene nada que ver, te puedes volver loco programando en PHP buscando errores, incluso si vas a modificar algo te tiras  4 hora, en  asp.net es mucho mas facil  de depurar y de editar aun que tardes mas en hacer la pagiina.
Yo me tiro uno o dos dias creandome una dll en vb para una web  que en PHP haria en la mitad de tiempo, pero despues a la hora de depurar o hacer una modificacion, en PHP me muero, me da un infarto, pero en vb.net  pufff casi ni me entero...
ASP.NEt es mejor por que cada vez que se crea un .aspx distinto el servidor crea un .exe especial para ese codigo, mientras que php  usa el mismo para todoooos los codigos, usease tiene que comprobar mas cosas y es mas lento, pero bueno  cada uno... yo jamas tocaria PHP si no es por que me obligan T_T xD
Si alguien ha programador muchas webs en ASP.NET y ahora se ha cansado y programa en PHP que lo diga, por que sinceramente lo veo dificil, no conozco  a nadie que haya pasado de ASP.NET a PHP. Puede ser que lo haya sere idealista pero no extremista.

Sobre Java VS VB.net
En vb.net programas mas rapido y cuesta menos de depurar y eso no hay nadie que lo niege xD


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Franki en 15 Diciembre 2010, 12:36 pm
Me parece que este post ha derivado en un lucha por ver que lenguaje de programación es mejor. Algo que me parece un poco tonto por una parte y un poco interesante por otra. Cada lenguaje tiene su propósito, por ejemplo no vas a ponerte a hacer en ensamblador un interfaz gráfica, a la vez que no te vas a poner a hacer un driver que controle la disquetera con Java.

No voy a meterme en esa discusión porque me ha dado pereza leerme todos los comentarios. Pero si quiero aclarar una cosa, y es el hecho de que siempre que se compara PHP, se compara con ASP.NET, como si no hubieran más tecnologías dedicadas al desarrollo en la web.

PHP es muy bonito, fácil de utilizar y su corta curva de aprendizaje hace de él un lenguaje con el que puedes empezar en poco tiempo a hacer tus pinitos. El problema es que existen pocos buenos programadores de PHP. He visto códigos horribles, díficiles de mantener, díficiles de depurar, con la lógica de la presentación mezclada con la lógica de negocios, millones de includes, mala protección de datos y un gran etcetéra. Está claro que todo esto puede pasar en cualquier tecnología, pero lo suelo ver más en aplicaciones desarrolladas con PHP. Además, en mi opinión, PHP es más un lenguaje, que una plataforma. Dispones de un conjunto enorme de funciones para realizar todo tipo de cosas, pero yo no utilizaría PHP a palo seco. Utilizaría un framework PHP, solo para marcar una organización de como se tienen que hacer las cosas. En PHP hay mucho libre albedrío y eso es bueno por una parte y muy malo por otra.

PHP es eficiente, y es bueno, muestra de ello tenemos que se pueden desarrollar grandes aplicaciones, solo hay que ver a Facebook (no voy a entrar si Facebook mola, o no mola, sino en el hecho de que es una aplicación que utilizan 500 millones de personas), pero no es la única solución disponible.

Existe la plataforma .NET y la plataforma Java EE. Estas dos plataformas son muchísimo más difíciles de aprender, más que nada porque son un mundo inmenso comparado con el mundo de PHP. Pero al ser más díficil te encuentras con aplicaciones más robustas, mejor diseñadas, pensadas en la depuración y en el mantenimiento. Esta afirmación realmente no tiene mucho sentido, pero es lo que hay.

No quiero aventurarme a decir que una es mejor que otra, yo trabajo como desarrollador de aplicaciones web, y utilizo PHP. Pero solo hace falta una búsqueda de trabajo en cualquier plataforma para descubrir que el lenguaje de programación más demandado es Java sin lugar a duda, con mucho auge de ASP.NET.

Vamos, que he escuchado muchas opiniones en las que se dice que PHP es para bebés, no para programadores jóvenes, sino para proyectos pequeños, medianos, con no más de 50-100 tablas. Pero si quieres enfrentarte a un proyecto complejo y grande, más te vale que te acerques a Java EE o a .NET.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Novlucker en 15 Diciembre 2010, 12:52 pm
El que dijo que el IDE de Java es maravilloso no ha probado el Visual Studio :xD ... además, de que IDE hablamos?
Mi recomendación es C# :D podrás programar aplicaciones de escritorio, para moviles, web, etc, se que varios dirán que en Java también, pero para gustos los colores :P

Saludos


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: raul338 en 15 Diciembre 2010, 13:26 pm
Varios acá tienen razón, no se puede decir que un lenguaje es mejor que otro, es Ilógico. Y varios de los puntos que están afirmando sobre los lenguajes son muy ligados a los IDEs "por default". Visual Studio es un excelente IDE para .net, php no tiene un IDE especifico con el que se relacione (bueno, si, pero no esta muy ligado ni es muy conocido en decir "Usas php? Ah usas Tal IDE") por lo que a la hora de depurar se sienten mas a gusto o incómodos. Por lo que se estan llendo de tema.

Java tuvo su época de ser lento, pero eso ya es historia, hoy en día puede correr a la misma velocidad que cualquier otra aplicación (sea o no interpretado) y lo mismo sucede con python, .net, c/c++

Lo que define la velocidad de tu aplicación no es el lenguaje ni el compilador (bueno si, pero no en gran medida), sino tu y tu forma de programar.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 15 Diciembre 2010, 14:15 pm
Sobre Java VS VB.net
En vb.net programas mas rapido y cuesta menos de depurar y eso no hay nadie que lo niege xD
Te pregunto, es realmente tan dificil depurar en Java?? Ademas de no ser dificil es tan simple como en VB.net...

Y por el tema de debugging en PHP, estoy bastante seguro q tambien hay un buen IDE para PHP, seguro un pluging de netbeans o eclipse (por lo menos en python hay y funciona excelente)...


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: ABDERRAMAH en 15 Diciembre 2010, 14:18 pm
De hecho es Visual Studio lo que uso normalmente, el ide java que uso es netbeans, que no sólo sirve para java (C/C++, PHP, javascript, Groovy, and Ruby) y no le veo ninguna carencia comparado con visualstudio.

código (aquí sale con c++ pero es idéntico, obviamente):
(http://www.8mobile.org/blog/images/netbeans.jpg)

diseño:
(http://www.steema.com/uploads/products/TeeChartJavaNetbeans800x600.jpg)

La verdad es que no he probado otros, pero yo con éste no echo nada de menos.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 15 Diciembre 2010, 14:26 pm
Es que Visual studio es muy buen ide... pero tambien son muy buenos ides Eclipse y Netbeans...


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: raul338 en 15 Diciembre 2010, 14:36 pm
Para PHP tenes los Zend (Zend Studio, Zend Debugger por nombrar los del creador del php) y muchisimos mas.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Lunfardo en 15 Diciembre 2010, 14:38 pm
eclipse es bueno ? espero que no esten hablando del mismo eclipse me baje yo =/


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: pucheto en 15 Diciembre 2010, 16:04 pm
eclipse es bueno ? espero que no esten hablando del mismo eclipse me baje yo =/
Es excelente... y tiene muchisimos plugins...


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Dnk! en 15 Diciembre 2010, 16:50 pm
Para mi VStudio, Ecplipse y Net Beans, vienen a ser lo mismo, solo que con otros nombres y colores, aun asi me aventuro a decir, que para un desarrollo profesional como eclipse ninguno, por su gran variedad de plugins, sincronicacion, backup etc...

Referente a depurar, he depurado en c# y vb.net en Vstudio, y Java con eclipse, y me resulta mas sencillo e intuitivo usando el debug de eclipse.

Pero como dicen. Gustos colores! (255,255,255) Hagan sus cuentas XD.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Debci en 16 Diciembre 2010, 22:07 pm
Java  lo enseñan en las universidades por que las empresas viejas necesitan programadores javeros para renovar sus programas y  es mas barato modificarlo que crear uno nuevo.

Java es muuuuuuuuuy tedioso en plan llaves y cosas de esas..
Y al fin y al cabo ¿que es java?
Lo bueno es C y C++ que son casi clones
Yo estoy aprendiendo Visual Basic.net
¿Que es vb.net o C#.net?
Super lenguajes de programacion  faciles y rapidos de programar, puedes programar cosas muy rapidamente y facil de depurar.
Lo malo es que es lento, por que  no es codigo administrado.

Aqui entra en juego C o C++
Son lenguajes No administrados, usease tienes que encargarte tu de escribir y liberar memoria, pero es muuuuy rapido comparado con .net.

Solucion = Fusion
Desde .net puedes llamar a tus .dll creadas en C o  C++
Usease, si quieres hacer 5 tonterias, pues las haces en  .net y si quieres hacer algo que consume mucho, pues lo haces en C o C++
 
Conclusion ¿Para que sirve java? Si puedes conbinar C y C++  que son lenguajes mas rapidos y pontentes que Java con .net que es facil y rapido de programar.

Linux esta programado en C windows en C  y asm, conclusion C es mejor que Java y .net es mas rapido que java y C usease coges los 2 extremos rapidez y velocidad, pero bueno .net no es tan lentooo, simplemente que cosas pesadas, pues las haces en C o C++
Ahora sabemos todos que no te gusta Java, en ocasiones futuras intenta dar opinion fundada y sin tirarte a tus mas profundas opiniones.

Saludos


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Franki en 17 Diciembre 2010, 20:46 pm
¿Sabes porqué se utiliza Java en vez de C o C++?

Porque el tiempo empleado para resolver un problema en Java te cuesta tres veces menos que para resolverlo en C. No hablo de programitas sencillos, sino de un proyecto de gran envergadura.

Porque Java tiene una plataforma dedicada a la construcción de aplicaciones empresariales distribuidas que ya quisieras tú hacerlo en C.

No puedes comparar Java con C, como mucho la plataforma Java con .Net, y hay ya entramos en otro mundo.

Lo unico que puedes comprar entre Java y C es la velocidad. Obviamente Java al ser interpretado va un poco más lento que C o C++, pero hoy en dia, con las maquinas tan potentes que existen...pues mira.

Java es multiplataforma. C y C++ tienes que utilizar librerias estandard si quieres que todo funcione bien en cada sistema operativo.

Etc, etc, etc, etc.

C y C++ sirve para realizar programas a bajo nivel. Y para mas cosas, pero las empresas no lo utilizan porque el tiempo es dinero.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Littlehorse en 17 Diciembre 2010, 22:01 pm
@Franki.

Estas errado por demasiado. Nada mas lejos de la realidad.

1) C se utiliza en gran medida para controladores, sistemas operativos, y demás, porque carece de las ventajas del paradigma mas utilizado actualmente: la orientación a objetos. Por supuesto solo refiriéndonos a C y no a Objective-C.
Es un lenguaje simple y complejo a la vez, que cumple los requerimientos para el desarrollo en bajo nivel como ninguno, por esa razón es el lenguaje mas utilizado en esa área.

2) En el área de desarrollo de controladores, de sistemas operativos, y de lo que se te pueda ocurrir a bajo nivel, C++ no se utiliza en gran parte porque la visión que tiene ese mercado en su mayoría es que C++ es un lenguaje con extras innecesarios para esa tarea. Aunque no todos piensen así, la mayoría lo piensa y por esa razón se utiliza C en esa área y no C++.

3) C++ hoy por hoy lo utilizan muchísimas empresas en todo el mundo, desde empresas de primera linea como IBM, Google y Microsoft, hasta empresas mas pequeñas que necesiten de la potencia de C++.

4) C/C++ no son un poco mas rápido que Java. La diferencia de velocidad es un detalle que no hay que minimizar; es un detalle que influye demasiado conforme la complejidad de la tarea que realiza la aplicación aumenta.

Si se utilizan lenguajes como Java, C#, y demás, es porque son plataformas excelentes para desarrollar aplicaciones sencillas en poco tiempo, con mano de obra barata. Si necesitas hacer una aplicación rápidamente que sincronice algunos servidores para sacarla como servicio en tu empresa, es mucho mas barato y rápido pagarle a un programador de Java de 6 meses de experiencia que pagarle a uno de C++ con 3 años de experiencia.

No se puede trabajar programando en C++ si no se tiene como mínimo mas de 1 año de estudio con el lenguaje, sin embargo en 5 meses podes entrar como junior en una empresa programando en Java, dado que la curva de aprendizaje son muy distintas.
A las empresas les sale mucho mas barato pagar un junior en Java que le rinde lo que la empresa necesita, y al junior le sirve para tener un sueldo y ganar experiencia laboral para poder, en un futuro, ganar mas dinero y conseguir un puesto mejor.

No vas a ver una suite de Adobe desarrollada en Java, ni vas a ver un Crysis hecho en C#. Cuando la aplicación requiere medianamente ciertos recursos, en lo que menos se piensa es en Java.
No por esto estoy queriendo decir que Java u plataformas similares no se utilizan para proyectos de gran envergadura, se utilizan por supuesto pero depende de que tipo de proyecto.
La aceptación de las empresas y la aparente salida laboral inmediata que tienen se deben a lo anterior expuesto y no exclusivamente a la facilidad del desarrollo ni al rendimiento como se quiere hacer creer.

Otro detalle a tener en cuenta, es que un gran director del mundo de desarrollo es Microsoft. Y como ya habrán visto en otros hechos puntuales (como los efectuados por Oracle) quien dirige la batuta es quien decide muchas cosas, y por hoy las apuestas de Microsoft son C++ -como lo fue siempre- para aplicaciones de rendimiento y .NET para aplicaciones sencillas.

Saludos!



Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Franki en 18 Diciembre 2010, 13:18 pm
Pues a eso me refiero, que C se utiliza mucho más para programar a bajo nivel y cuando se quiere mucho rendimiento.

Pero las empresas a día de hoy, o al menos aquí en España, Valencia, la mayoría utilizan Java o .Net para sus desarrollos, porque no son proyectos que tengan que tener mucho rendimiento  (en lo que a rapidez se refiere) y se requiere mucha rapidez en el desarrollo. Además no veo a nadie programando una aplicación para WEB utilizando CGIs con C, la verdad.

Obviamente no me referia al desarrollo de videojuegos, ni de aplicaciones tan grandes como photoshop, Office o cualquiera de esta índole. Esas empresas tienen mucho capital, y pueden permitirse mucho tiempo en el desarrollo, y a expertos programadores de C, con muchos conocimientos. Pero la mayoría de PYMES tira por Java y .NET.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Littlehorse en 18 Diciembre 2010, 14:28 pm
Pues a eso me refiero, que C se utiliza mucho más para programar a bajo nivel y cuando se quiere mucho rendimiento.

En realidad englobaste a C/C++ en una misma bolsa, por eso la aclaración. Son dos lenguajes distintos y hay que saber diferenciarlos correctamente.

Pero las empresas a día de hoy, o al menos aquí en España, Valencia, la mayoría utilizan Java o .Net para sus desarrollos, porque no son proyectos que tengan que tener mucho rendimiento (en lo que a rapidez se refiere) y se requiere mucha rapidez en el desarrollo.

Claramente, por las razones que mencione antes es normal ver que se requieran muchos programadores junior en esos lenguajes.

Además no veo a nadie programando una aplicación para WEB utilizando CGIs con C, la verdad.

Obviamente, pero por esa razón hay que tener en claro para que se utiliza cada lenguaje y no generalizar diciendo cosas como "Hoy en día C++ no se utiliza" porque es decir un absurdo.


Obviamente no me referia al desarrollo de videojuegos, ni de aplicaciones tan grandes como photoshop, Office o cualquiera de esta índole.

Es que nunca quedo claro a que te referías. En el post anterior tu idea principal fue "C y C++ para bajo nivel y algunas cosas mas [sic), para todo lo demás Java y .NET".

Esas empresas tienen mucho capital, y pueden permitirse mucho tiempo en el desarrollo, y a expertos programadores de C, con muchos conocimientos. Pero la mayoría de PYMES tira por Java y .NET.

Por supuesto que para organizaciones pequeñas que requieran mano de obra barata y aplicaciones sencillas rápidamente, plataformas como .NET son la primer opción por su potencia y la rapidez de desarrollo, eso esta mas que claro. Pero en fin, no solo las grandes empresas utilizan C++ en su desarrollo, son tantas las empresas que desarrollan en C++ que es imposible nombrarlas todas en este hilo.

Saludos!


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Chamanik en 19 Diciembre 2010, 15:01 pm
Bueno, yo me he leído todas las respuestas  ;D

En todo caso, me gustaría saber si es imposible programar un videojuego en JAVA. Eso sí, supongo que debería utilizar algún motor externo. No digo que también tuviésemos que crear el motor en JAVA.

Yo ahora estoy aprendiendo a modelar que es lo más me gusta. Pero también me gustaría aprender un lenguaje con el que se pueda hacer de todo. Aun pensando que en otras áreas el lenguaje escogido flaqueara en algo.

Creo que el C++ es el más potente por lo que leo de vosotros. Y el Python y el JAVA tampoco están mal. Pero el C++ casi lo descarto. Y más aún cuando quiero un lenguaje para aprender sin ningún tipo de presión laboral. Osea, como un hobby.

Pero no quiero un lenguaje que me limite a Microsoft o que sea solo el tema de arrastrar ventanitas. Quiero poder teclear algo en condiciones.

No sé si me explico... :rolleyes:


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Littlehorse en 19 Diciembre 2010, 17:28 pm
Puedes crear juegos en Java, de hecho hay una industria completa alrededor de los juegos en Java para moviles.




Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: anonimo12121 en 19 Diciembre 2010, 18:08 pm
Puedes crear juegos en Java, de hecho hay una industria completa alrededor de los juegos en Java para moviles.




y los minijuegos web como los de la pagina minijuego tambien son de java no??


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Littlehorse en 19 Diciembre 2010, 18:13 pm
Depende de la pagina, haber en Java los hay pero generalmente ese tipo de juegos se hacen en flash.




Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: ABDERRAMAH en 19 Diciembre 2010, 18:24 pm
añado: Lo cual no significa que actionscript sea un buen lenguaje de programación.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Chamanik en 19 Diciembre 2010, 18:36 pm
Puedes crear juegos en Java, de hecho hay una industria completa alrededor de los juegos en Java para moviles.




Ya, pero yo me refiero a videojuegos más complejos. De esos que usan las 3D y tal. Osea, el típico videojuego de PC.


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Blitzkrieg' en 19 Diciembre 2010, 18:45 pm
Esos los hay en Java y en C++


Título: Re: ¿Por que JAVA tiene fama de ser pesado?
Publicado por: Littlehorse en 19 Diciembre 2010, 19:39 pm
Ya, pero yo me refiero a videojuegos más complejos. De esos que usan las 3D y tal. Osea, el típico videojuego de PC.

Depende a lo que te refieras con típico. Manejar "3D y tal" se puede, por lo que hacer un juego en 3D es posible, de ahí a que sea un juego "típico" de PC, hay un camino bastante grande.  ;D

Saludos!