“Hello, World!” vai fazer você escrever um pouco de TypeScript e se familiarizar com o fluxo de trabalho do Exercism. Concluí-lo desbloqueia o restante da Trilha TypeScript.
Assista ao nosso vídeo "Introdução ao Hello, World" para começar 👇
O exercício introdutório clássico. Basta dizer "Hello, World!".
"Hello, World!" é o tradicional primeiro programa de quem está começando a programar em uma nova linguagem ou ambiente.
Os objetivos são simples:
Se tudo der certo, você estará pronto para buscar seu primeiro exercício de verdade.
Siga as instruções de configuração do TypeScript para instalar as dependências necessárias:
https://exercism.org/docs/tracks/typescript/installation
Instale as dependências do exercício:
$ yarn install
Execute os testes com:
$ yarn test
Em muitas suítes de teste, todos os testes, exceto o primeiro, são ignorados.
Depois que um teste passar, você pode reativar o próximo
trocando xit por it.
Esta seção é um guia passo a passo para resolver este exercício.
Este exercício tem dois arquivos:
O primeiro arquivo é onde você vai escrever seu código. O segundo é onde os testes estão definidos.
Os testes vão verificar se o seu código está fazendo a coisa certa. Você não precisa saber escrever uma suíte de testes do zero, mas ajuda entender como um teste é e o que ele está fazendo.
Abra o arquivo de teste, hello-world.test.ts. Há um único teste dentro:
it('says hello world', () => {
expect(hello()).toEqual('Hello, World!')
})
Rode o teste agora, com o seguinte comando na linha de comando:
$ yarn test
O teste falha, o que faz sentido, já que você ainda não escreveu nenhum código.
A falha é parecida com isto:
× says hello world (5ms)
● Hello World › says hello world
expect(received).toEqual(expected) // deep equality
Expected: "Hello, World!"
Received: "Goodbye, Mars!"
4 |
5 | it('says hello world', () => {
> 6 | expect(hello()).toEqual('Hello, World!')
| ^
7 | })
8 |
9 | })
at Object.it (hello-world.test.ts:6:32)
E estas são as linhas de código com prováveis defeitos no arquivo hello-world.test.ts:
a 6ª linha:
expect(hello()).toEqual('Hello, World!')
^
Portanto, o problema está na chamada da função hello().
Podemos ver que o teste espera 'Hello, World!' como saída, mas em vez disso recebe "Goodbye, Mars!".
Então vamos verificar agora essa função no arquivo hello-worlds.ts:
export function hello(): string {
return 'Goodbye, Mars!'
}
Agora vemos que a função retorna a string incorreta, que é a razão da nossa falha. Vamos corrigir isso mudando o valor retornado:
export function hello(): string {
return 'Hello, World!'
}
Rode o teste de novo:
PASS ./hello-world.test.ts
Hello World
√ says hello world (4ms)
E ele passa!
Crie sua conta no Exercism para aprender e dominar TypeScript com 108 exercícios e mentoria humana de verdade, tudo de graça.