Sobre Java…

De acuerdo, Java PODRÍA ser un buen ejemplo de cómo debería ser un lenguaje de programación. Pero las aplicaciones Java son buenos ejemplos de cómo NO DEBERÍAN ser los programas.

— pixadel

Comentarios
  1. Yo ya hago los programas en Java como churros.. y cada vez que me tengo que poner con C++ me da algo… me acuerdo siempre de lo limpio y fácil que es Java.

    Que tienes muchos puntos debiles? no lo dudo. El diseño de interfaces gráficas es un poco pesado.. y no muy intuitivo. Si queremos programar a bajo nivel tenemos que tirar de librerias nativas…

    Hoy en día cada lenguaje tiene su parcela. Para mi Java es un buen lenguaje. (desde mi humilde opinión)

    Responder

  2. @deckerix no, si yo coincido contigo. Solo es una frase para reflexionar.

    De hecho mi PFC lo escribí en Java, y hace bastante tiempo escribí un artículo sobre la historia de Java que podía haber sido el comienzo de un libro como el de Python: Una no tan breve historia de Java.

    Responder

  3. @Zootropo me lo imaginaba… 😉
    estoy ansioso por ver que opinan los demás…
    por cierto el pixadel ese quien es? xD

    Responder

  4. mortem

    Mucha gente cree que por crear clases, piensan que ya programan Orientado a Objetos, y es el gran error que muchos tienen, la POO impliquica un buen diseño de modelado de Clases antes de programar, aquellos que dicen que java es dificil, es porque no tienen idea de lo que es POO, por eso que muchos prefieren ver alternativas como python, o ruby, porque son un lenguaje pocos estrictos. Java implica tener un buen modelado, y de acuerdo a ese diseño, la programación se hace sencilla.

    Responder

  5. Estoy de acuerdo. Java podría ser un buen ejemplo de como deberían ser los lenguajes, lo que pasa es que no terminaron de implementarlo demasiado bien.

    A mi personalmente el diseño del lenguaje me gusta, me gusta su alta orientación a los patrones de diseño, o sea Swing es muy orientado a MVC, por ejemplo podemos ver Decorators con los BufferedReader (por poner un ejemplo).

    Sin embargo, Swing me parece un poco “feo”, no sé, de GTK+ dicen que está muy mal estructurado y mal hecho, pero lo prefiero a Swing, para poner un ejemplo, la falta de closures hace que el manejo de eventos sea desastroso (a mi gusto).

    Bueno, hay más cosas de Java que no me gusta 😛

    Y sobre programas desastrosos en Java, bue, en parte es porque es para muchisimos programadores su primer lenguaje de programación y puedes hacer cosas cutres.

    @Morten, estoy a medias de acuerdo contigo. Es cierto que mucha gente piensa que saber crear clases es saber POO, pero no estoy de acuerdo que mucha gente se vaya a alternativas como Python o ruby (de tipado dinámico) por el tema de ser menos estrictos con la POO. Conozco muchisima gente que programa PHP (también tipado dinámico) y hace cosas desastrosas 😛

    Nada más, un saludo.

    Responder

  6. Anónimo

    El código limpio no lo hace el lenguaje, lo hace el programador. Ahora bien, es cierto que algunos lenguajes ayudan más (python) que otros (perl).

    La OOP es cojonuda (a mi así me lo parece), pero el que un autobús transporte más gente que una moto no lo convierte automáticamente en la mejor solución para cualquier tipo de viaje. Hay casos y situaciones en las que la OOP es un problema y no una solución.

    Por cierto, mola lo de la POO, me hace sentir como…, no sé…, bueno, mi DNI parece que luce más brillante. Lo voy a escribir para recordarlo en un papelito amarillo que pegaré a la pantalla del CP que uso para conectarme, gracias a un enrutador LADA, a la Entreredes.

    Responder

  7. Niko@localhost

    Pues a mi me parece que Java es un lenguaje en el que, como ya se menciono, teniendo un modelo bien definido y hecho ANTES de sentarte a codificar se pueden hacer cosas enormes.

    Por otro lado eso exige no solo conocer la sintaxis de java y la programacion orientada a objetos, sino ademas aprender a hacer modelos, con UML(Lenguaje de Modelado Unificado) por ejemplo.

    Aprender todo eso exige un monton de tiempo y esfuerzo y he visto a muchos morir en el intento. Pero bien vale la pena, por que las aplicacions bien modeladas y construidas sobre ese modelo, son sencillas de mantener, extender y reutilizar.

    LLevo 3 años programando en Java y me ha resultado bastante bien, pero tambien estoy de acuerdo en que a veces lo que necesitas es una aplicacion que no requiere de un modelado enooorme y de un monton de diseño y es entonces donde entran otros lenguajes.

    A mi me parece que la frase “el mejor lenguaje es… ” depende de las necesidades especifcas de cada aplicación

    Responder

  8. No se nada de programación, pero los softwares bajo Java, son más pesados que mi suegra!

    Responder

  9. Como dice el sabio dicho: Pastelero a tus pasteles.

    No vas a usar C++, por ejemplo, para hacer un simple formulario web, ni tampoco vas a hacer PHP para hacer un driver. Esta bién, igual se podría, pero segun el tipo de aplicación se hace más o menos complicado.

    Sobre Java igual creo que es un lenguaje demasiado sobrevalorado. Java es muy bueno para aplicaciones empresariales, pero ni por si acaso te creo un juego en Java. Se que Java3D ha evolucionado y todo, pero aún así no le llega ni a los talones a usar un framework como Direct X que le saca todo el jugo a las tarjetas gráficas.

    En fin, creo que hay que siempre mirar el tema con altura de miras, preocuparse bien del problema que se está solucionando y en base a eso decidir que herramientas utilizar.

    Responder

  10. Francisco

    En uno de mis trabajos me toco estar a cargo de unos cuantos servidores y los servidores que corrían aplicaciones Java (independiente del OS) eran los más complicados nunca era suficiente memoria y el procesador Siempre ocupado casi al tope.. Curiosamente al matar las aplicaciones los equipos funcionaban increiblemente bien. Me gustaría mencionar que teníamos un cisco pix cuya interfase web solo funcionaba con java 4.1 y nada más. para mi eso es una muestra de lo mal que esta diseñado. Me encanto la cita… de verdad que representa exactamente lo que quiere decir. osea. Otro ejemplo… Los equipos móviles que triunfan en el mercado no conocen la palabra JAVA!

    Responder

  11. Youri

    Java… Provoca al igual pasiones y odios. Soy programador y he pasado por multitud de lenguajes desde que empezé la carrera y en mi vida laboral, todos han sido “el mejor” durante un tiempo.
    Recuerdo que C++ era la panacea, luego Java y ahora mucha gente habla sin cesar de Python… Cada uno tiene una parcela, como habéis dicho, y todos pueden resultar un desastre si se usan fuera de ellas.
    Lo que si tiene Java es mucha potencia y mucha “librerías” para ayudar al desarrollo con él. Tener tanta información y tanta ayuda hace que sea muy cómodo trabajar con él. Aunque muchas veces esto se vuelve en contra tuya porque no sabes cuál es la mejor solución. Así, puede que un buen lenguaje dé como fruto un mal programa.

    Responder

  12. Que ese pixadel de la cara. Seguro que el como buen inutil programador no pudo hacer un buen disenio y por ende dice esas cosas.
    Muchachos, no importa el lenguage, yo soy java, pero por ejemplo Ruby me parece una mierda y sin embargo se puede hacer una linda app en Ruby.

    salute
    R

    Responder

  13. Sergio

    Creo que Dementialduck ha dado en el clavo. El problema no es el lenguaje en si mismo, el problema es que quienes programamos en Java nos empeñamos en hacerlo TODO en java.

    Sin java programar sería un suplicio, pero si el único lenguaje disponible fuese Java más de uno se levantaría por las mañanas deseando estar muerto.

    Responder

  14. A mi como usuario nunca me gusto Java, los programas eran demasiado pesados. Ahora, desde mi escasisimo conocimiento, puedo tener un horizonte un poco mas amplio 😛 Pero, por ahora, solo me manejo con C, pero dadme tiempo 😛

    Responder

  15. PaulGuitar

    No se mucho de programación, he leido que la culpa en si no es del lenguaje, el problema es que java es un lenguaje interpretado lo que lo hace mas lento, no se si sea eso (no soy experto).

    uso Openoffice y es un exelente programa, va a la par de Microsoft Office, unos dicen que es superior.
    Openoffice esta programado en java, lo unico malo es que tarda demasiado en cargar y la cantidad de memoria que necesita para trabajar es exajerada.

    Responder

  16. Raddictus

    @PaulGuitar

    Java no es interpretado, usa compilación a un formato llamado bytecode, esto es mucho más rápido que un lenguaje interpretado, pero tampoco llega a ser tan rápido como el código nativo generado por lenguajes de nivel medio como C/C++.

    OpenOffice ya que lo mencionas y como tu mismo reconoces, es una de las aplicaciones que precisamente denota una desventaja de rendimiento ya que está escrito en Java, podrás notar que Microsoft Office es mucho más rápido que OpenOffice, además tiene una carga superior de memoria en comparación de la suite de Microsoft.

    El rendimiento en una aplicación de uso tan frecuente y de hecho fundamental para muchos usuarios, es definitivamente un punto importantísimo para considerar. Exagerando un poco, pero poniéndole ejemplo didáctico a la cosa, imagínen ¿un navegador y/o explorador de archivos de uso principal como Nautilus, Dolphin, Firefox, Opera, etc. escrito en Java?

    Responder

  17. El core de OpenOffice.org está escrito en C++ y no Java, así que la velocidad que ves es cosa de C++ y no de Java.

    Responder

  18. errepunto

    Excelente frase que se podría utilizar para múltiples lenguajes (ahora mismo me vienen a la cabeza PHP, Javascript y Visual Basic, por ejemplo).

    Raddictus, el argumento del navegador no me convence, recuerdo que gran parte de Firefox es Javascript. También hay algún buen navegador de archivos hecho en java, como muCommander http://www.mucommander.com (un clon de norton/total comander y similares).

    No obstante, creo java en el escritorio está aún muy verde, pero tampoco está tan mal como se le pone.

    A titulo personal, el binomio que mejor me ha resultado es java para aplicaciones complejas y python para sencillas y rápidas, pero cada maestrillo tiene su librillo, jeje.

    Saludos.

    Responder

  19. Una cosilla, Java y JavaScript a pesar de lo que pudiera parecer por el nombre, no tienen nada que ver.

    Responder

  20. El que es malo programando, es malo programando en cualquiera de los lenguajes que trabaje, Java es lento si no sabes programarlo, si sabes programar te das gusto. Y como decían en los comentarios de arriba, cada lenguaje tiene su nicho o campo de aplicación, hay varios bocones que hablan mal de Java pero realmente es un plataforma bastante buena y completa, en donde el principal defecto de la misma son los programadores poco documentados que se acercan a intentar hacer algo con ella.

    Responder

  21. Valenluis

    Me ha encantado la frase.
    A mi lo que me gustaría, es un artículo sobre paradigmas (POO, FP,etc) y la relación entre estos y los diferentes lenguajes (python,java,ruby,C++,etc).
    A ver si un día de estos se puede 😛

    Responder

  22. errepunto

    Ya se que java y javascript no tienen nada que ver, ya, jeje, pero creo que esos 3 lenguajes son 3 claros ejemplos de lenguajes con mala fama principalmente por haber sido mal utilizados por algunos malos programadores.

    Como dice Douglas Crockford, javascript es “The World’s Most Misunderstood Programming Language”.

    (http://www.crockford.com/javascript/javascript.html)

    Responder

  23. @errepunto pues si, desde luego, JavaScript sobre todo. Menos mal que ahora con AJAX se le está haciendo algo más de justicia.

    Responder

Deja un comentario