<Direto ao Ponto 70> Aprendendo com o “Hello, world!”
- #Informática Básica
- #C
Artigos desta série: ( < ) Anterior | Índice | Seguinte ( > )
Olá, dev!
O termo “Hello, world” se tornou o mais conhecido entre os programadores. Geralmente, ele é usado como um primeiro programa no aprendizado de qualquer linguagem de programação. Mas por que ele se tornou tão importante? E o que podemos aprender com ele?
Sumário
1. Introdução
2. A origem do termo “Hello, world”
3. O que podemos aprender com o comando “Hello, world”
4. Considerações finais
5. Referências
1 – Introdução
É inegável que todo programador conhece o termo “Hello, world”. Ele é usado como um texto a ser impresso na tela de um computador por uma instrução de impressão, por qualquer linguagem de programação.
A simplicidade do comando é incrível, mas se o texto aparecer na tela, significa que o compilador está instalado, configurado corretamente e o programa está funcionando.
Nas linguagens atuais, um comando para imprimir este termo na tela ficaria assim (em Python):
print(“Hello world”)
O que podemos aprender com ele?
· A linguagem oferece um comando que apresenta na tela (ou imprime em papel) uma mensagem textual;
· A estrutura do comando ilustra uma amostra da sintaxe da linguagem;
· O comando se chama “print”;
· Ele é uma função com um parâmetro;
· O texto a ser impresso deve estar entre aspas.
O que mais podemos aprender com ele?
Este artigo vai mostrar outras coisas que podemos aprender com este comando simples, logo na primeira aula de programação.
2 – A origem do termo “Hello, world”
Nos primórdios da programação, as primeiras linguagens já ofereciam um comando de impressão de texto na tela (ou em papel).
Segundo CODEINTERVIEW [1], algumas ocorrências de mensagens parecidas com “Hello, world” já tinham aparecido em textos de programação, mostrando um texto com uma saudação amigável para o programador:
· Um professor da Universidade do Havaí, Ira Cotton, escreveu um programa na linguagem PL/I que mostrava “Aloha, World!” na tela;
· O criador da linguagem Perl, Larry Wall, escreveu um programa que escrevia na tela o texto “Howdy Neighbor” (ou “Olá vizinho!”).
Mas a saudação que ficou mais conhecida, e virou referência, foi mesmo “Hello, world!”. Ela apareceu a primeira vez em 1972, em um tutorial de Brian Kernighan, com introdução da linguagem B, derivada do BCPL.
O texto “hello, world” foi separado em 3 variáveis porque elas eram limitadas a 4 caracteres ASCII.
Depois, em 1974, Kernighan usou o mesmo termo em um tutorial interno nos Laboratórios Bell sobre a linguagem C.
Por fim, em 1978, Kernighan e Dennis Ritchie usaram “hello, world” como exemplo de um programa no famoso livro escrito por eles: “C, a Linguagem de Programação”. E aí, o termo pegou! Até hoje, eu tenho esse livro guardado!
Nas linguagens atuais, um programa básico para mostrar “Hello, world” ficaria assim:
Em Python
print(“Hello, world”);
Em Java
public class HelloWorld {
public static void main(String[] args) {
System.out.println(“Hello World”);
}
}
Em Javascript
console.log(“Hello, World”);
3 – O que podemos aprender com o comando “Hello world”
O comando acima, na linguagem C, é muito simples, mas além de ensinar a escrever um texto na tela, ele também pode ensinar outras coisas importantes. Podemos aprender muita coisa com os erros deste programa.
Peraí, Fernando! Este programa não tem nenhum erro! É verdade, executando este código, a saída seria esta:
No entanto, nós podemos introduzir erros para ver como o compilador se comporta para respondê-los!
Por exemplo, o que aconteceria se o programador esquecesse de digitar o ponto-e-virgula, após o comando printf()?
#include <stdio.h>
main( ) {
printf(“hello, world”) // faltando o ponto-e-vírgula
}
Executando este código, recebemos o resultado do compilador:
Mas para que induzir erros em um programa que estava rodando corretamente?
Bem, agora você já sabe como o compilador vai informar um erro sempre que você esquecer de digitar um ponto-e-vírgula no seu programa em C. E não precisa mais se assustar quando este erro aparecer, pois já saberá o que fazer para corrigí-lo. :-)
Agora vamos ver outros erros que podem ocorrer e a resposta do compilador.
Falta da chave de encerramento do bloco do programa:
#include <stdio.h>
main( ) {
printf(“hello, world”);
// falta a chave de encerramento do programa
Resposta do compilador, após a execução do código:
Falta do parêntese final do nome da função main:
#include <stdio.h>
main( { // falta o parêntese final da função main
printf(“hello, world”);
}
Resposta do compilador, após a execução do código:
Erro de digitação do comando printf:
#include <stdio.h>
main( ) {
brintf(“hello, world”); // erro de digitação do comando printf (brintf)
}
Resposta do compilador, após a execução do código:
Falta de uma aspa no texto “hello, world”:
#include <stdio.h>
main( ) {
printf(“hello, world); // falta a aspa final no texto “hello, world”
}
Resposta do compilador, após a execução do código:
Falta das aspas no texto “hello, world”:
#include <stdio.h>
main( ) {
printf(hello, world); // faltam as aspas no texto “hello, world”
}
Resposta do compilador, após a execução do código:
Falta da chamada a stdlib.h:
// falta a chamada a stdlib.h
main( ) {
printf(hello, world);
}
O arquivo de cabeçalho stdlib.h contém definições e funções da biblioteca padrão da linguagem C para alocação de memória, conversão de tipos, controle de processos e execução de comandos do sistema, entre outras funcionalidades.
Resposta do compilador, após a execução do código:
Outros tipos de erros podem ser induzidos, como o uso de caracteres em maiúsculas no nome das funções main e printf, uso de uma entrada numérica ao invés de texto literal em printf, troca das letras do nome da função main(), usar apenas o comando printf() sem a função main(), falta de qualquer argumento como parâmetro da função printf etc.
Desta forma, o programador iniciante se familiariza com os tipos de erros que ele pode cometer na digitação do código e perde o medo de ver erros na compilação ou execução do seu programa.
Agora, um dever de casa para você: para testar a ideia mostrada aqui, escolha uma linguagem de programação que você queira aprender, copie um código do programa que escreva “Hello, world” com ela, introduza erros e execute o programa. Você vai ver quais são as respostas do compilador para cada um desses erros e aprender com elas.
4 – Considerações finais
Este artigo é uma continuação da série DIRETO AO PONTO que eu escrevi em 2024 para a DIO. Eu já tinha encerrado a série, mas alguns temas planejados não viraram artigos. Eu vou atualizar a série com alguns destes artigos e depois encerrá-la de vez, para escrever sobre outras coisas.
Ele mostra a importância do termo “Hello, World”, tão conhecido na programação, como um primeiro programa básico para mostrar aos iniciantes em alguma linguagem um como escrever um texto na tela.
Além de mostrar um comando simples e confirmar se o compilador está instalado e funcionando, ele também mostra um pouco da sintaxe da linguagem.
Mais do que isso, a introdução proposital de erros de digitação no código podem dar uma ideia dos tipos de erros que os programadores vão encontrar regularmente e das mensagens de erro que o compilador mostrará para cada erro testado.
O que foi mostrado aqui para o programa simples de impressão de "Hello, world" pode ser estendido para outros blocos de uma linguagem, como comandos de seleção e repetição, funções, classes e outros.
Quanto à ocorrência de erros de digitação, não se preocupe: Eles VÃO acontecer! Cabe a você, programador, reconhecê-los e corrigi-los.
Obrigado pela sua atenção e por ter lido até aqui!
5 – Referências
[1] CODEINTERVIEW - The History of Hello World: A Brief Overview. Disponível em: <https://codeinterview.io/blog/the-history-of-hello-world-a-brief-overview/>. Acesso em 19/03/2025.
Artigos desta série: ( < ) Anterior | Índice | Seguinte ( > )