Havoc se acerca
JUL 4

En el mundo de la informática, cualquiera que haya programado un poco sabrá lo que es ‘Hola Mundo’. Para los profanos, os explico: ‘Hola Mundo’ es el primer programa típico-chorra que haces cuando estás aprendiendo un lenguaje nuevo. No sirve para nada más que para una primera toma de contacto con el lenguaje de programación y lo único que hace es sacar un mensaje por pantalla que dice ‘Hola Mundo’.

Sin embargo, a pesar de ser tan chorra, es difícil encontrar un libro que te enseña un lenguaje de programación desde lo más básico que no tenga este primer programa o uno muy similar.

Lo que quiero hacer en esta entrada es mostrar algunos ejemplos de ‘Hola Mundo’ en varios lenguajes que conozco y, principalmente, dejar en el más absoluto ridículo al ‘lenguaje’ que utilizo en mi día a día en el curro: Banksphere.

Vamos al lío.

  1. En C

    Es algo tan sencillo como:

    include <stdio.h>

    int main() {

    printf(”Hola Mundo”);

    }

    Se tardan unos 30 segundos en escribirlo. Luego hay que compilarlo y ejecutarlo, pero todo el proceso no debería llevar más de 5 minutos.

  2. En Java

    Implica algo más de código, debido a que Java es puramente orientado a objetos, pero tampoco mucho más:

    public class HolaMundo {

    public static void main(String args[]) {

    System.out.println(”Hola Mundo”);

    }

    }

    Como podéis ver, es un poquito más de código. Nuevamente en escribirlo, compilarlo y ejecutarlo no se tardan ni 5 minutos.

  3. En Visual Basic

    Como no soy ningún experto, he tirado de Internet para buscar el código de este programa. Lo he encontrado para consola en la página de Micro$oft. No voy a ser malo y no voy a buscar la versión con ventanas, pero seguro que es enorme :P

    Module Hola

    Sub Main()

    Console.WriteLine(”Hola mundo desde una app en VB!!!”)
    Console.Read()

    End Sub

    End Module

    En escribir esto, “compilarlo” y ejecutarlo tampoco se tardan ni 5 minutos. La versión con ventanas podría llevar algo más, pero creo que en ningún caso superaría los 10.

  4. En HTML

    En HTML lo que voy a hacer es una página cuyo único contenido es la repetida frase “Hola Mundo”. Eso sí, centradito.

    <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>

    <html>

    <head>

    <title>Hola Mundo</title>

    </head>

    <body style=”text-align:center;”>

    Hola Mundo

    </body>

    </html>

    Aquí no se tardan ni 2 minutos en escribirlo, guardarlo como .html y abrirlo con un navegador. Y, además, es totalmente compatible con los estándares y accesible, no como la nueva web del Congreso xD

  5. En Banksphere

    Aquí empieza lo bueno. Para comenzar, voy a dar por hecho que tienes instalado WebSphere Aplication Developer, WSAD para los amigos (aunque también lo llamamos guasa, porque el programita es la risa). El WSAD es un Eclipse con 1001 plugins que no hacen más que joder comiéndose la memoria y los recursos en general del ordenador. Bueno, suponiendo que tienes WSAD instalado y actualizado a la versión 3.2 Unificada estos son los pasos a seguir. No voy a dar todos los pasos detalladamente, en plan pincha aquí, selecciona esto, porque aun en el hipotético caso de que tuviérais esta mierda maravilla no creo que lo hiciérais. Así que iré poniendo los pasos, para que os hagáis una idea:

    1. Te vas a prespectiva Vega y lo primero que hay que hacer es crearse un Proyecto de Bloques con nombre ‘HolaMundo’.
    2. A continuación, te creas un Bloque ‘HolaMundo’ y un Paquete Funcional y le das el mismo nombre.
    3. Ahora empieza lo interesante. Te creas un Proyecto de Lógica de Negocio. Le llamas ‘HolaMundo_LN’.
    4. Antes de poder empezar a crear operaciones, necesitas en tu LN una Aplicación de Lógica de Negocio. Ya te puedes crear una OI (Operación Interna) a la que llamarás holaMundo.
    5. Tu OI no va a tener parámetros de entrada, pero debido a cómo está hecho esto, ‘Hola Mundo’ va a ser tu parámetro de salida. Así que, te vas al Contexto y te creas una variable de tipo DESCRIPCION_BREVE y le pones un valor a pelo. Sí, el valor va a ser ‘Hola Mundo’.
    6. Para poder usar esta mierda de método que acabas de crear necesitas una Fachada. Te creas un Proyecto de Fachadas que llamarás F_HolaMundo. Dentro de éste creas una Fachada y un Interfaz de Fachada, al que llamarás IF_HolaMundo.
    7. Ahora, tienes que decirle a tu fachada que existe un Interfaz de Fachada. Hecho esto, crea en tu Interfaz el método que vas a usar: holaMundo. No tiene parámetros de entrada, pero sí de salida. Dale caña.
    8. Vale, tu mierda de método ya es visible desde la OP (Operación de Presentación) que aún no has hecho, pero que tendrás que hacer. Pero eso no es suficiente. Ahora necesitas crear en tu LN un Adaptador de Aplicación para comunicar tu LN con tu LP. Créalo y llámalo AAL_HolaMundo. Creas un método ‘holaMundo’ y le pones su parámetro de salida. Ahora, haz los mapeos.

      NOTA: En BKS (Banksphere) se entiende por mapeo el decirle a la arquitectura de mierda las correspondencias entre variables. Como no puedes escribir este código tú mismo y BKS no es inteligente, hay que dárselo todo mascadito.

    9. Ya podemos ponernos con la LP (Lógica de Presentación). Crea un Proyecto de Aplicación Lógica y llámale HolaMundo_LP. Y no preguntes por qué si es la LP se llama Proyecto de Aplicación Lógica. La respuesta vendrá luego. O no…
    10. Ya puedes crear tu primera OP. Llámala OP_HolaMundo. Ahora en el flujo de tu flamante OP mete una llamada a la Fachada que creaste e indícale que el método al que quieres llamar es tu holaMundo de las pelotas. Ahora, oh mierda, necesitas una página. Bien, entremos en el mundo del MIRA.
    11. En perspectiva Mira Lógico (no confundir con Mira a secas) te creas un Proyecto de Mira Lógico. Configúralo bien o la cagarás más adelante. ¿Que cómo se configura bien? Pues… ve probando. Alguna de las configuraciones será la buena. Cuando la encuentres, haz un documento para tus compañeros…
    12. Ahora créate una página Mira Lógico. Como lo único que quieres es sacar por pantalla una mierda de mensaje, vamos a tener una página sencilla de cojones. O eso te crees tú…
    13. Créate un contenedor y le pones cabecera y faldón. En la cabecera tienes que poner un título (obligatorio por Usabilidad). De título le pones… déjame pensar… ‘Hola Mundo’. En el pie, créate un botón en el que ponga ‘Salir’.
    14. Ahora, mete un Objeto HTML. En este componente Mira (¿por qué coño no llamarán a las cosas de una única forma?) mete una etiqueta y ponle un nombre bueno, no dejes el ‘label1′, que luego vas a tener que mapearle el resultado de la ejecución de la OI.

      Ya tienes una página con una cabecera que no necesitas, un faldón con un botón que no necesitas y un objeto HTML que contiene la etiqueta. Acojonante.

    15. Ahora tienes que sincronizar esta página que has creado con el estado página que deberías haber creado en tu OP. Si no lo has hecho, hazlo, y procura ponerle el mismo nombre que le has dado a tu página mira, o te dará error. Ahora reza para que el maravilloso sincronizador de Mira no pete sin razón aparente. Si da error, te tocará reiniciar, reconstruir (o sea, compilar. Sí, aquí se compilan hasta las páginas…) e incluso puede que volver a hacer la página. Cosas de Banksphere.
    16. Si aún no has tirado el ordenador por la ventana, supongo que ya tienes tu página sincronizada. Enhorabuena, ya te queda como la mitad de los pasos para terminar tu Hola Mundo :D

      Ahora, créate una variable de tipo DESCRIPCION_BREVE en el contexto de tu OP y mapea lo que te devuelve la OI a esa variable. Ya lo tienes.

    17. Venga, paciencia, que ya estamos terminando xD Abre la página, que ahora es Mira, no Mira Lógico. Bien, vete a la pestaña ‘Mapper de Datos’ y mapea tu descripción breve del contexto a la etiqueta que creaste hace media hora. Ahora reza por que el mapeo vaya bien, o te tocará hacerlo por javascript cuando dentro de 45 minutos hayas conseguido arrancar el servidor y llamar a tu OP y se vea la página en blanco.
    18. Ya casi estamos!! Pero queda lo más importante. Crea un Proyecto de Ensamblado. En el ensamblado, mete tu lógica de presentación y tu lógica de negocio. Te dará error. Ve metiendo proyectos que no necesitas, pero que te pide la arquitectura, hasta que deje de dar errores. Bien.
    19. Ahora créate un Proyecto de Lógica de Presentación. No, lo de antes no era tu proyecto de lógica de presentación, aunque luego se le llame así. En el argot de BKS a esto que acabas de crear se le llama escenario. Es para liar la cosa y que alguien de fuera no se sepa manejar con la arquitectura, no te pongas así. Y que no se te olvide darle a tu escenario el mismo nombre que a tu ensamblado. No preguntes por qué…
    20. Ahora en tu escenario despliega tu OP y tu OI. Ah, no olvides configurar tu escenario. Para esto, vete a otro escenario ya configurado y cópiate la configuración. Si no dispones de otro escenario ya configurado estás jodido… Despliega también todas las OPs que te encuentres en tu workspace, porque puede que luego te falte alguna, aunque no la utilices…
    21. Ahora, se supone que ya lo tienes todo montado para arrancar tu Hola Mundo. Vete a la vista de Servidores y genera código de despliegue de tu aplicación. Configura el servidor como te digo. No preguntes por qué se configura así. Aquí en BKS hay muchas cosas que se hacen sin saber por qué, no pasa nada. Arranca el servidor y cruza los dedos.
    22. Arregla los miles de errores que te dan al arrancar. No hagas caso de esa traza de error que ves en la consola del servidor que tiene más de 20.000 líneas. No pasa nada, luego funciona. Para solucionar los errores de arranque del servidor, necesitarás contar con un compañero que lleve varios meses currando con esto. No, no hay manuales ni documentación al respecto…
    23. Ahora que nos arranca el servidor, espera que se nos ha olvidado la página de inicio de la aplicación. ¿Qué haces? ¿index.html? No, nombre, no, este servidor es especialito y tienes que llamarla startingPage.html. Novato… Y configúrate la página para que coja todos los datos necesarios del contexto del escenario. Venga, que ya casi está…
    24. Ahora, lanza la página. ¡¡Desde el Internet Explorer, no me seas friki, que esta mierda no funciona en Mozilla Firefox!!
    25. Con suerte, estarás llorando emocionado ante el monitor porque se ve una mierda de pantalla en la que pone Hola Mundo. Cualquier profano que te vea pensará que estás mal de la cabeza. Pero nosotros te entendemos. Si no has tenido suerte, te puede quedar una hora (con suerte xD) de corregir errores tontos que hayas cometido en alguno de los pasos.

    Tiempo estimado para novatos: indefinido. Tiempo estimado para una persona con dos o tres meses de experiencia: de 3 a 5 días. Tiempo estimado para una persona con casi un año de experiencia: 1 día.

Conclusión: No trabajes en Banksphere. Ni en ISBAN.

2 comentarios (¡¡Pero quiero más!!)

  1. estrella Dice:

    Cielo santo, me he leído todos los pasos porque me lo he propuesto firmemente, porque me han entrado ganas varias veces de tirar el ordenador por la ventana :S Si te digo la verdad, no sé cómo no te has pegado un tiro después de tanto tiempo trabajando en esto. Creo que no voy a volver a quejarme de Symbian…

    Mucho ánimo y un gran beso!!

    PD: Como ya he terminado los exámenes y voy avanzando en las tareas post-exámenes estoy volviendo a dejarme caer por los blogs… intentaré ponerme al día con el tuyo, pero por lo que veo has tenido problemas con los comentarios :S ¿?

  2. Makken Skeyes Dice:

    Gracias por tu comentario, Estrella, y ánimo a ti también con tu Symbian ;)

    Me alegro de que hayas terminado los exámenes, además con buenas notas, no? Enhorabuena!

    Lo que dices de dejarte caer por los blogs… con el mío tienes bastante curro, jejeje. Y, sí, tuve problemillas con los comentarios de una entrada de mi antiguo blog que alguien decidió comentar en este en otra entrada. Tuvimos una pelea dialéctica en la que quedó patente la cobardía del comentarista (siempre con nombre “Anónimo”) y al final decidí borrar todos los comentarios porque no venían a cuento. Si quieres más detalles, ya te contaré.

    Un besazo y gracias por comentar!! :)

Puedes comentar, por el bien de la raza felina

Nota: Los comentarios con más de un enlace serán retenidos para su moderación, debido a la posibilidad de que sea spam. Perdonad las disculpas :P

Suscribirse sin comentar

Nota: La moderación de comentarios ha sido habilitada y podría tardar en enviar tu comentario. No le des más de una vez al botoncito (be patient, my friend :P).