Adicione os exercícios iniciais


Depois de implementar o exercício hello-world, a próxima tarefa é implementar mais de 20 outros exercícios.

Tipos de exercício

Há dois tipos de exercício que você pode implementar:

  • Exercícios de Conceito: eles são feitos para ensinar um ou mais conceitos a um estudante. Consulte a documentação para saber mais.
  • Exercícios de Prática: eles servem para praticar os conceitos aprendidos. Consulte a documentação para saber mais.

Em geral, recomendamos que trilhas novas comecem implementando Exercícios de Prática, porque são mais fáceis de implementar e exigem menos reflexão de antemão. Os Exercícios de Conceito podem sempre ser adicionados depois, quando sua trilha já estiver funcionando bem.

Escolha os exercícios

Para ajudar as trilhas a implementar Exercícios de Prática, criamos o repositório exercism/problem-specifications. Esse repositório contém metadados de mais de 100 Exercícios de Prática, que as diferentes trilhas podem usar para implementar a versão desses exercícios específica da própria trilha. Por isso, você vai ver os mesmos exercícios implementados em muitas trilhas diferentes.

Então como escolher os mais de 20 desta lista de mais de 100 exercícios? Aqui vão algumas orientações.

Escolha exercícios que façam os estudantes praticarem uma grande variedade de conceitos

Existe muita variedade nos conceitos usados nos mais de 100 exercícios. Procure implementar exercícios que façam os estudantes praticarem uma grande variedade de conceitos. Então, em vez de implementar 20 exercícios focados em strings, tente implementar exercícios focados em conceitos diferentes.

Aqui estão alguns conceitos com exercícios de exemplo:

Conceitos Exercícios
Manipulação de bits allergies, secret-handshake
Booleans leap
Classes circular-buffer, robot-name
Concorrência bank-account
Condicionais raindrops
Datas e horas gigasecond, meetup
Igualdade clock
Números de ponto flutuante darts, space-age
Avaliação preguiçosa alphametics, zebra-puzzle
Listas resistor-color, spiral-matrix
Laços collatz-conjecture, protein-translation
Mapas nucleotide-count
Números leap, grains
Aleatoriedade dnd-character, robot-name
Strings bob, isogram,
Árvores binary-search-tree, pov

Escolha exercícios com diferentes graus de dificuldade

Alguns exercícios serão mais difíceis de implementar do que outros. Procure implementar exercícios com diferentes graus de dificuldade: alguns fáceis, alguns intermediários e alguns difíceis.

O quão difícil um exercício é depende de vários fatores, como os conceitos envolvidos e a linguagem da trilha. Pode ajudar ver como o exercício aparece em outras trilhas que já o implementaram, para ter uma ideia melhor de como a implementação poderia ficar.

Aqui estão alguns exercícios com seus níveis de dificuldade:

Escolha exercícios que combinem com a sua trilha

Nem todos os exercícios vão combinar com a sua trilha. Escolha apenas os exercícios que combinam com a sua trilha; é melhor não implementar um exercício do que implementar um que não faz sentido. Por exemplo, o exercício lens-person faz o estudante trabalhar com lentes, que muitas linguagens não suportam.

Se você encontrar um exercício que não combina com a sua trilha, pode adicionar o slug dele ao array exercises.foregone no arquivo track config.json. Assim, as ferramentas vão ignorar esse exercício.

Exemplo de currículo

Para deixar tudo isso um pouco mais concreto, veja como poderia ser uma seleção de exemplo de exercícios iniciais:

Exercício Dificuldade Conceitos
hello-world Fácil Nenhum (exercício inicial)
leap Fácil Números, Booleans
gigasecond Fácil Datas e horas
isogram Fácil Strings
resistor-color Fácil Listas
nucleotide-count Fácil Mapas
collatz-conjecture Fácil Laços
darts Fácil Números de ponto flutuante
two-fer Fácil Formatação de strings, Argumentos opcionais
high-scores Fácil Processamento de coleções
raindrops Intermediário Condicionais
bob Intermediário Strings
allergies Intermediário Manipulação de bits
series Intermediário Exceções
circular-buffer Intermediário Classes
meetup Intermediário Datas e horas
yacht Intermediário Listas
dominoes Difícil Tuplas, Avaliação preguiçosa
diamond Difícil Formatação de strings
alphametics Difícil Avaliação preguiçosa
forth Difícil Análise sintática

Implemente os exercícios

Depois de escolher os exercícios que você quer incluir na sua trilha, o próximo passo é implementá-los. A documentação de Adicionar Exercício de Prática tem instruções detalhadas sobre como adicionar um Exercício de Prática.