Los desarrolladores de software veteranos conocen el programa Hello World como el primer paso para aprender a codificar. El programa, que produce alguna variante de » Hello, World!»en la pantalla de un dispositivo, se puede crear en la mayoría de los idiomas, por lo que es una de las sintaxis más básicas involucradas en el proceso de codificación. De hecho, un proyecto reciente de la Association for Computing Machinery (ACM) en Louisiana Tech encontró que hay al menos 204 versiones del programa.
Tradicionalmente, los programas Hello World se utilizan para ilustrar cómo funciona el proceso de codificación, así como para garantizar que un lenguaje o sistema funcione correctamente. Por lo general, son los primeros programas que aprenden los nuevos programadores, porque incluso aquellos con poca o ninguna experiencia pueden ejecutar Hello World de manera fácil y correcta.
Por encima de todo, Hello World es simple. Es por eso que se usa tan a menudo como un barómetro del éxito del programa. Si Hello World no funciona de manera efectiva dentro del marco, es probable que otros programas más complejos también fallen. Como dice un experto de Win-Vector, Hello World es en realidad un programa de confrontación. «El autor está diciendo ‘no es obvio que su sistema informático funcione, por lo que no voy a invertir mucho tiempo en él hasta que vea que puede imprimir al menos una línea de texto'», dice el blogger de Win-Vector John Mount.
Pero esta frase de dos palabras tiene grandes implicaciones para el campo de la informática. Con Hello World como base, los programadores novatos pueden comprender fácilmente los principios o elementos de la informática. Y los profesionales con años de experiencia en codificación pueden usarlo para aprender cómo funciona un lenguaje de programación determinado, especialmente en términos de estructura y sintaxis. Con aplicaciones en todos los niveles de habilidad y en casi todos los idiomas, hay una larga historia detrás de un programa tan corto.
Usa
El uso principal de los programas Hello World se describió anteriormente: Es una forma para que los codificadores novatos se familiaricen con un nuevo lenguaje. Sin embargo, las aplicaciones de estos programas van más allá de una introducción al mundo de la codificación. Hello World puede, por ejemplo, usarse como una prueba de cordura para asegurarse de que los componentes de un lenguaje (su compilador, entorno de desarrollo y tiempo de ejecución) se han instalado correctamente. Debido a que el proceso involucrado en la configuración de una cadena de herramientas de programación completa es largo y complejo, un programa simple como Hello World se usa a menudo como una prueba de primera ejecución en una nueva cadena de herramientas.
Los hackers también usan Hello World «como prueba de concepto de que el código arbitrario se puede ejecutar a través de un exploit donde los diseñadores del sistema no tenían la intención de ejecutar el código», según consultores de programación de Cunningham & Cunningham (C2). De hecho, es el primer paso para usar contenido casero, o «cerveza casera», en un dispositivo. Cuando los programadores experimentados están configurando un entorno o aprendiendo uno previamente desconocido, verifican que Hello World se comporta correctamente.
También se utiliza como parte del proceso de depuración, lo que permite a los programadores comprobar que están editando el aspecto correcto de un programa modificable en tiempo de ejecución y que se está recargando.
Un uso más popular de Hello World es como base para la comparación. Los programadores pueden «comparar el tamaño del ejecutable que genera el lenguaje y cuánta infraestructura de soporte debe existir detrás del programa para que se ejecute», según el wiki de C2.
Comienzos
Aunque los orígenes de Hello World siguen siendo algo confusos, se cree que su uso como frase de prueba comenzó con el libro de Brian Kernigham de 1972, A Tutorial Introduction to the Language B. En este texto, la primera versión conocida del programa se usó para ilustrar variables externas. Porque el ejemplo anterior del tutorial imprimía » hi!»en la terminal, el más complejo» ¡hola, mundo!»requería más constantes de carácter para la expresión y era el siguiente paso en el proceso de aprendizaje.
A partir de ahí, fue utilizado en una nota de Bell Laboratories en 1974, así como en el Lenguaje de Programación C en 1978. Este popular texto es lo que hizo a Hello mundialmente famoso. El ejemplo de ese libro (el primer y más puro ejemplo) imprimía «hola, mundo», sin mayúsculas ni signos de exclamación. En este momento, Hello World se usaba casi exclusivamente para ilustrar algunas funciones de un lenguaje, no para probar si el sistema se estaba ejecutando.
Antes de los textos seminales de Kernigham sobre B y C, no había un primer programa estándar. Incluso en 1972, no se usaba ampliamente. El popular tutorial BÁSICO, «Mi computadora me gusta, Cuando hablo en Basic», comienza con un programa simple que escribe una línea de texto. Sin embargo, este mensaje era «MI HUMANO ME ENTIENDE», lejos de las dos palabras que usan los programadores de saludo hoy en día. Pero una vez que se inventó Hello World, se extendió rápidamente y se hizo muy conocido a finales de la década de 1970. Su popularidad continúa hasta el día de hoy.
Una instrucción, Muchos lenguajes
Así es como se ve el código de Hello World en algunos de los lenguajes de programación más populares actualmente en uso.
Java
class HelloWorld {
public static void main(String args) {
System.out.println("Hello, world!");
}
}
C#
using System;
class Program
{
public static void Main(string args)
{
Console.WriteLine("Hello, world!");
}
}
Python
print("Hello, world!")
Ruby
puts "Hello, world!"
Scala
object HelloWorld extends App {
println("Hello, world!")
}
ASP.NET
Response.Write("Hello World!");
Lisp
(princ "Hello, world!")
Haskell
main = putStrLn "Hello, world!"
Malbolge
('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>}=<M:9wv6WsU2T|nm-,jcL(I&%$#"
`CB]V?Tx<uVtT`Rpo3NlF.Jh++FdbCBA@?]!~|4XzyTT43Qsqq(Lnmkj"Fhg${z@>
Go
package main
import "fmt"
func main() {
fmt.Println("Hello, world!")
}
Hello World Today: Una Práctica Estándar en Diversas Formas
En lenguajes de codificación modernos, Hello World se implementa en diferentes niveles de sofisticación. Por ejemplo, el lenguaje Go introdujo un programa multilingüe Hello World, y XL cuenta con una versión 3D giratoria completa con gráficos. Algunos lenguajes, como Ruby y Python, solo necesitan una instrucción para imprimir «hola mundo», pero un lenguaje ensamblador de bajo nivel podría requerir varios comandos para hacerlo. Los idiomas modernos también introducen variaciones en la puntuación y el mayúsculas y minúsculas. Estos incluyen la presencia o ausencia de la coma y el signo de exclamación, así como la mayúscula de ambas palabras. Por ejemplo, cuando los sistemas solo admiten letras mayúsculas, la frase aparece como » HOLA MUNDO.»El primer programa Malbolge no trivial impreso» Hola Mundo.»Las variaciones también van más allá de lo literal. En lenguajes funcionales como Lisp y Haskell, los programas factoriales son sustituidos por Hello World para enfatizar las técnicas recursivas. Esto es diferente de los ejemplos originales, que enfatizaban la E / S y producían efectos secundarios.
Con la creciente complejidad de los lenguajes de programación modernos, Hello World es más importante que nunca. Tanto como herramienta de prueba como de enseñanza, se ha convertido en una forma estandarizada de permitir a los programadores configurar su entorno. Nadie puede estar seguro de por qué Hello World ha resistido la prueba del tiempo en una industria conocida por su innovación rápida, pero ha llegado para quedarse.
Listo para una nueva carrera?
Gana tus galones en El Gremio de Software. Haga clic en el botón de abajo para aplicar al programa que sea adecuado para usted.
Aplicar Hoy