Este documento descreve como os vários ficheiros de exercícios e de percursos são apresentados ao estudante, tendo em conta se o estudante está a usar a CLI ou o editor.
Há três tipos de documentação que determinam que documentação é apresentada para um exercício.
Estes ficheiros são específicos de cada exercício:
.docs/introduction.md: apresenta o(s) conceito(s) que o exercício ensina ao estudante (obrigatório).docs/introduction.append.md: texto de introdução adicional para acrescentar depois da introdução existente (não é usado em exercícios de conceito, opcional para exercícios de prática).docs/instructions.md: fornece as instruções do exercício (obrigatório).docs/instructions.append.md: texto de introdução adicional para acrescentar depois das instruções existentes (não é usado em exercícios de conceito, opcional para exercícios de prática).docs/hints.md: fornece dicas ao estudante para o ajudar a desbloquear-se num exercício (obrigatório para exercícios de conceito, opcional para exercícios de prática).meta/config.json: contém informação sobre a origem do exercício (opcional)Consulta a documentação dos exercícios de conceito e a documentação dos exercícios de prática para mais informações.
Estes ficheiros são partilhados por todos os exercícios:
debug.md: explica como um estudante que está a programar no navegador ainda pode fazer "debugging" (opcional)help.md: contém instruções específicas do percurso sobre como obter ajuda (obrigatório)representations.md: explica que normalizações são aplicadas a uma solução para criar a sua representação (opcional)tests.md: contém instruções específicas do percurso sobre como correr os testes (obrigatório)Consulta a documentação dos ficheiros partilhados para mais informações.
Além dos ficheiros de documentação específicos do percurso e do exercício acima referidos, há dois elementos de documentação que são transversais ao Exercism (e, por isso, partilhados por todos os percursos):
Quando trabalhas num exercício no navegador, os ficheiros de documentação aparecem nos momentos relevantes. Como exemplo, as dicas não são mostradas a menos que o estudante peça para as mostrar. Além disso, o editor também não precisa de mostrar as instruções da CLI.
Quando trabalhamos localmente através da CLI, não temos a opção de mostrar a documentação de forma condicional. Por isso, a CLI tem de descarregar sempre toda a documentação relevante. Para não obrigar o estudante a abrir vários ficheiros, a CLI concatena toda a documentação relevante em três documentos:
Este ficheiro contém as instruções, a introdução (opcional) e a informação sobre a origem do exercício (opcional).
# [exercise name]
Welcome to [exercise name] on Exercism's [track name] Track.
If you need help running the tests or submitting your code, check out `HELP.md`.
If you get stuck on the exercise, check out `HINTS.md`, but try and solve it without using those first :)
## Introduction (optional)
[Exercise-specific file: .docs/introduction.md] (optional)
[Exercise-specific file: .docs/introduction.append.md] (optional)
## Instructions
[Exercise-specific file: .docs/instructions.md]
[Exercise-specific file: .docs/instructions.append.md] (optional)
## Source
### Created by
- @[author-1 handle]
- @[author-2 handle]
...
### Contributed to by (optional)
- @[contributor-1 handle]
- @[contributor-2 handle]
...
### Based on
[source] - [source url]
Este ficheiro descreve como correr os testes, bem como as instruções de ajuda específicas do percurso e transversais ao Exercism.
# Help
## Running the tests
[Track-specific file: exercises/shared/.docs/tests.md]
## Submitting your solution
[Exercism-wide documentation: instructions on how to submit a solution]
## Need to get help?
[Exercism-wide documentation: instructions on how to get help]
[Track-specific file: exercises/shared/.docs/help.md]
Este ficheiro contém as dicas específicas do exercício (opcional)
# Hints
## General
- Consider extracting the logic to a helper function.