Gli sviluppatori di software veterani conoscono il programma Hello World come il primo passo per imparare a codificare. Il programma, che emette qualche variante di ” Ciao, Mondo!”sul display di un dispositivo, può essere creato nella maggior parte delle lingue, rendendolo una delle sintassi più basilari coinvolte nel processo di codifica. Infatti, un recente progetto presso l’Association for Computing Machinery (ACM) presso Louisiana Tech ha scoperto che ci sono almeno 204 versioni del programma.
Tradizionalmente, i programmi Hello World vengono utilizzati per illustrare come funziona il processo di codifica, nonché per garantire che una lingua o un sistema funzioni correttamente. Di solito sono i primi programmi che i nuovi programmatori imparano, perché anche quelli con poca o nessuna esperienza possono eseguire Hello World sia facilmente che correttamente.
Soprattutto, Ciao Mondo è semplice. Ecco perché è così spesso usato come barometro del successo del programma. Se Hello World non funziona efficacemente all’interno del framework, è probabile che anche altri programmi più complessi falliscano. Come dice un esperto di Win-Vector, Hello World è in realtà un programma conflittuale. ” L’autore sta dicendo ‘non è ovvio che il tuo sistema informatico funzionerà, quindi non investirò molto tempo finché non vedrò che può almeno stampare una riga di testo’”, dice il blogger Win-Vector John Mount.
Ma questa frase di due parole ha grandi implicazioni per il campo dell’informatica. Con Hello World come base, i programmatori alle prime armi possono facilmente comprendere i principi o gli elementi dell’informatica. E i professionisti con anni di esperienza di codifica possono usarlo per imparare come funziona un determinato linguaggio di programmazione, specialmente in termini di struttura e sintassi. Con applicazioni a tutti i livelli di abilità e in quasi tutte le lingue, c’è una lunga storia dietro un programma così breve.
Utilizza
L’uso principale per i programmi Hello World è stato descritto sopra: è un modo per i programmatori principianti di familiarizzare con un nuovo linguaggio. Tuttavia, le applicazioni di questi programmi vanno oltre un’introduzione al mondo della codifica. Hello World può, ad esempio, essere utilizzato come test di integrità per assicurarsi che i componenti di un linguaggio (il suo compilatore, lo sviluppo e l’ambiente di runtime) siano stati installati correttamente. Poiché il processo coinvolto nella configurazione di una toolchain di programmazione completa è lungo e complesso, un semplice programma come Hello World viene spesso utilizzato come test di prima esecuzione su una nuova toolchain.
Gli hacker usano anche Hello World “come prova del concetto che il codice arbitrario può essere eseguito attraverso un exploit in cui i progettisti del sistema non intendevano eseguire il codice”, secondo i consulenti di programmazione di Cunningham& Cunningham (C2). In realtà, è il primo passo nell’utilizzo di contenuti fatti in casa, o” birra fatta in casa ” su un dispositivo. Quando i programmatori esperti configurano un ambiente o ne imparano uno precedentemente sconosciuto, verificano che Hello World si comporti correttamente.
Viene anche utilizzato come parte del processo di debug, consentendo ai programmatori di verificare che stiano modificando l’aspetto giusto di un programma modificabile in fase di runtime e che venga ricaricato.
Un altro uso popolare per Hello World è come base per il confronto. I programmatori possono ” confrontare le dimensioni dell’eseguibile generato dal linguaggio e quanta infrastruttura di supporto deve esistere dietro il programma per l’esecuzione”, secondo il wiki di C2.
Inizi
Sebbene le origini di Hello World rimangano un po ‘ poco chiare, si ritiene che il suo uso come frase di prova sia iniziato con il libro di Brian Kernigham del 1972, A Tutorial Introduction to the Language B. In questo testo, la prima versione nota del programma è stata utilizzata per illustrare le variabili esterne. Perché l’esempio precedente nel tutorial stampato ” ciao!”sul terminale, il più complesso” ciao, mondo!”richiedeva più costanti di carattere per l’espressione ed era il passo successivo nel processo di apprendimento.
Da lì, è stato utilizzato in un memo Bell Laboratories nel 1974, così come il linguaggio di programmazione C nel 1978. Questo testo popolare è ciò che ha reso Hello famoso nel mondo. L’esempio di quel libro (il primo e più puro esempio) ha stampato “ciao, mondo”, senza lettere maiuscole o punto esclamativo. In questo momento, Hello World è stato utilizzato quasi esclusivamente per illustrare alcune funzioni di una lingua— non per verificare se il sistema era in esecuzione.
Prima dei testi seminali di Kernigham su B e C, non esisteva un primo programma standard. Anche nel 1972, non era ampiamente in uso. Il popolare tutorial di base,” Il mio computer mi piace, quando parlo in Basic, ” inizia con un semplice programma che scrive una riga di testo. Tuttavia, questo messaggio era “IL MIO UMANO MI CAPISCE”, lontano dai due parole di saluto che i programmatori usano oggi. Ma una volta che Hello World è stato inventato, si è diffuso rapidamente, diventando ben noto alla fine del 1970. La sua popolarità continua fino ad oggi.
Una dichiarazione, molti linguaggi
Ecco come appare il codice per Hello World in alcuni dei linguaggi di programmazione più popolari attualmente in 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 pratica standard in varie forme
Nei moderni linguaggi di codifica, Hello World è distribuito a diversi livelli di sofisticazione. Ad esempio, la lingua Go ha introdotto un programma multilingue Hello World e XL presenta una versione 3D rotante completa di grafica. Alcuni linguaggi, come Ruby e Python, hanno bisogno di una sola istruzione per stampare “hello world”, ma un linguaggio assembly di basso livello potrebbe richiedere diversi comandi per farlo. Le lingue moderne introducono anche variazioni nella punteggiatura e nell’involucro. Questi includono la presenza o l’assenza della virgola e del punto esclamativo, nonché la capitalizzazione di entrambe le parole. Ad esempio, quando i sistemi supportano solo lettere maiuscole, la frase appare come “CIAO MONDO.”Il primo programma Malbolge non banale stampato” Ciao mondo.”Le variazioni vanno anche oltre il letterale. Nei linguaggi funzionali come Lisp e Haskell, i programmi fattoriali sono sostituiti da Hello World per enfatizzare le tecniche ricorsive. Questo è diverso dagli esempi originali, che enfatizzavano l’I/O e producevano effetti collaterali.
Con la crescente complessità dei moderni linguaggi di codifica, Hello World è più importante che mai. Sia come test che come strumento didattico, è diventato un modo standardizzato per consentire ai programmatori di configurare il loro ambiente. Nessuno può essere sicuro del motivo per cui Hello World ha superato la prova del tempo in un settore noto per l’innovazione a fuoco rapido, ma è qui per rimanere.
Pronto per una nuova carriera?
Guadagna le tue strisce alla Gilda del software. Fare clic sul pulsante qui sotto per applicare al programma che è giusto per te.
Applica oggi