El Lenguaje Perfecto

Domingo 11 de Marzo de 2007

Odio Java. Con eso fuera del camino, me puedo dedicar a un artículo medianamente neutral sobre el tema.

Hay miles de lenguajes de programación, con miles de paradigmas distintos. C, Pascal, PHP, Ruby, Java… podría seguir por todo el post y no terminar más.

Algo que algunos no-programadores me han preguntado (interesados o no en aprender) es ¿qué diferencia hay? y ¿para qué tantos, no basta con uno? No son preguntas fáciles de responder (y son de esas donde no existe la verdadera respuesta correcta), pero aporto mi granito de arena:

No alcanza con uno (ni con veinte), y son todos diferentes porque cada uno se usa de manera diferente y con objetivos diferentes. Por nombrar unos pocos (donde la gran mayoría estará de acuerdo conmigo), Java está diseñado para correr en cualquier lado, C sirve para todo lo que necesite tener acceso prácticamente directo al hardware (y Assembler es innecesariamente complejo), Python es infinitamente fácil para el principiante, sin dejar de ser suficientemente poderoso para el programador avanzado, y PHP sirve para (poco más que) sitios web.

De los que nombré, Assembler y Python son los más diferentes; los otros tienen una sintaxis (la forma de ordenar el código) bastante parecida, aunque con ciertas diferencias: Java soporta Objetos, y PHP trae todo incluido (es decir, no es necesario llamar a librerías externas para agregar funcionalidad (me refiero al #include de C, para los que dudan)).

La máquina no lee código fuente (así se llama al texto que después se transformará en programa), sino código binario (”código máquina“). Aunque es posible escribir un programa de esa manera, es tedioso, muy probable que se haga un error, y tan complejo que hacer proyectos pequeños se vuelve una tarea enorme. Assembler (o lenguaje ensamblador) es un paso por encima de eso: en lugar de ingresar secuencias de unos y ceros, se ingresan códigos más fáciles de memorizar, pero igualmente de manera larga y tediosa; a menos que el programa sea en extremo simple, no se lo suele usar (los PIC son otra cosa…). Un compilador es un programa que se encarga de transformar el código fuente a código máquina (un “.exe”). (Dejo los detalles de compilación e interpretación para otro post.)

No existe (y no existirá) un lenguaje perfecto, porque cada programador hace las cosas de manera diferente. A mi no me gusta Java porque es lento y porque gran parte del código es redundante, haciéndolo incómodo para hacer un programa rápido (Visual Basic es mejor para este tipo de programas), pero esto no lo hace malo (bueno, sí para los principiantes).

Mis lenguajes son PHP, C, Java (lo uso porque, bueno, paga), VB y Lisp. Para los programadores que lean esto ¿que eligen ustedes?

5 Comentarios a “El Lenguaje Perfecto”

  1. Alex Sanhz dijo:

    Domingo 11 de Marzo de 2007, 2:24 pm

    INTERESANTE entrada!, e INTERESANTE blog!.
    Por cierto, acabamos de descubrir tu blog y nos ha parecido “Excelente”.
    Suerte.
    Un cordial saludo de Bloggea2

    ( http://alexsanhz.blogspot.com/2006/08/lista-de-afiliados.html )

  2. HernanMDQ dijo:

    Lunes 12 de Marzo de 2007, 6:03 pm

    VB a la cabeza para soft de escritorio. Hoy en dia para desarrollo web usaria php con el soporte de ajax que es fantastico. Creo que debiste nombrar a Ruby que se viene con fuerza.

    Salu2.

  3. Tordek dijo:

    Lunes 12 de Marzo de 2007, 6:22 pm

    Ajax no es un lenguaje, y hay varios motivos por los que no usar javascript (o XML, si vamos al caso).

    Ruby podrá “Venirse con fuerza”, y con RoR podrás hacer maravillas, pero no terminan de convencerme. Mi opinion sobre RoR es simple: lindo juguete, pero trabajo con PHP. (Si tu opinion es que PHP es malo porque Ruby es más fácil, me salta la duda sobre tu habilidad.) Además, no tiene soporte en la mayoría de los hostings pagos (ni hablar de los gratuitos).

    Una cosa sobre los lenguajes de programación: los más nuevos, con todos los chiches, los “nueva maravilla del mundo” tienden a ser olvidados. C, Lisp, y hasta Java están soportando el paso del tiempo. ¿Ruby llegará a dentro de dos años? C sí.

  4. Jose dijo:

    Jueves 9 de Agosto de 2007, 1:47 pm

    No me parece adecuado el tono de tu comentario.
    Pienso que pierdes visitantes con esa forma de dejar a visitante como si no tuviera ni idea de nada.
    Un saludo desde España.

  5. Tordek dijo:

    Jueves 9 de Agosto de 2007, 8:54 pm

    Bien… es una lástima que te moleste mi comentario, pero como geek que se respeta aprendí a no darle bola a la gente en Internet, y espero lo mismo de su parte. Además, yo no escribo el blog (sólamente) por las visitas; si lo hiciera, habría publicidad en los costados.

    Gracias por la visita, ¡saludos!

Comentá:

XHTML permitido: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="">