sábado, 2 de diciembre de 2017





Como ya se ha dicho miles de veces, en general es absurdo decir que un lenguaje de programación es mejor que otro.
La pregunta no es tan absurda, porque toda pregunta en principio es buena, plantea una duda…
¿Por qué sería absurda una respuesta que diga que uno es mejor? Pues porque los lenguajes son herramientas… Sería como decir que un martillo es mejor que un destornillador ¡absurdo! ¿verdad? O como decir que una excavadora es mejor que un tractor, etc… o como decir que una moto eléctrica es mejor que un coche.
Cada herramienta tiene unas ventajas y unos inconvenientes.
Entre las ventajas de Java:
Java sería “como un coche todoterreno”
  • Es lenguaje más popular / más usado, con un montón de código ya hecho, un montón de gente que lo conoce, un montón de usos (servidor / aplicaciones web, móviles, escritorio…), un montón de ofertas de trabajo…
    Mucha gente tiene coches, hay muchos talleres, lo piden en trabajos…
  • Tiene código intermedio portable: lo compilas y se puede ejecutar en Linux, Windows, MacOS, etc…
    No es un coche normal, es todoterreno.
  • Yo diría que para proyectos grandes es más adecuado, por su sintaxis más exigente, que obliga a dejar las cosas más claras y más controladas… así otro programador puede entender el código sin volverse loco ni caer en malos entendidos. Cuando es un proyecto de muchas personas y de largo plazo cosas como esta son importantes. Por ejemplo, Java tiene “excepciones” y herencia. Esta última es algo básico de Programación Orientada a Objetos que se usa en muchos proyectos grandes.
    El coche tiene cinturón de seguridad, airbag, rueda de repuesto, varias puertas y varias plazas… da más seguridad y es más adecuado para grupos de gente.
Entre las ventajas de Go:
Go sería como “una moto eléctrica”
  • Es más simple, sin tantas ataduras… lo cual permite hacer el código en menos tiempo.
    El lado oscuro es que un novato puede ahogarse, porque no te obliga a llevar salvavidas… Go no tiene “excepciones” ni obliga a algunas otras precauciones.
    La moto eléctrica no tiene cinturón de seguridad ni airbag, si te chocas vas a sufrir más. Si hace frío estarás más incómodo.
  • Se compila para una plataforma / máquina concreta. Esta carencia de portabilidad tiene la ventaja de adaptarse mejor a cada máquina concreta… y esto puede implicar un poco más de rapidez, o hacer cosas más específicas.
    La moto eléctrica se cuela entre los coches en los atascos, en la ciudad la puedes aparcar en cualquier lado, en el campo puede ir por un camino estrecho, etc.
  • Es más nuevo… y esto implica menos gente que lo conozca, lo cual parece una desventaja pero puede significar que pagan más dinero si es que alguien busca un programador de Go (porque como hay menos gente que lo conoce…).
    El ser más nuevo también significa incluir cosas “modernillas”. Tiene algunas cosas como “duck typing” o un sistema de concurrencia más moderno.
    La moto eléctrica es algo nuevo y no la tiene casi nadie… Tiene cosas modernas como no contaminar, no dar ruido, cargarse en un enchufe…
Con esto yo creo que alguien se hace una idea.

0 comentarios:

Publicar un comentario

Checa esto

¿Que temas debe de haber en la pagina?

Posts Populares

Popular Posts

Recent Posts