## Escrevendo programas mais complexos

Agora que nós sabemos como desenhar coisas no tabuleiro, vamos aproveitar esta habilidade e desenhar um belo G (Veja o painel de Objetivo para detalhes).

Quando você escreve um programa bem complexo, por vezes é útil adicionar comentários para simplificar uma posterior revisão do código. Aqui, por exemplo, é fácil se perder no processo de desenho, e você pode querer adicionar comentários como barra vertical desenhada ou terminei de desenhar o G. hora de voltar para posição inicial. Comentar seu código é quase obrigatório se você (ou mais alguém) quiser lê-lo depois, embora comentar demais (descrevendo coisas óbvias) é ruim pois as ideias importantes se perdem no meio do ruído.

Existem [!java]três[/!][!python|scala|c]dois[/!] tipos de comentários em [!thelang], que instruem o [!java|scala|c]compilador[/!][!python]interpretador[/!] a não ler o texto que você adiciona para humanos:

- Comentários de uma única linha. Quando o [!java|scala|c]compilador[/!][!python]interpretador[/!] encontra o símbolo [!java|scala|c]//[/!][!python]#[/!], ele ignora o resto da linha.
- Comentários em várias linhas. O [!java|scala|c]compilador[/!][!python]interpretador[/!] ignora tudo entre [!java|scala|c]os símbolos /* e */ mesmo quando eles são postos em linhas diferentes.[/!] [!python]uma linha comaçando com ''' até a próxima linha terminado com '''.[/!]

    chamadaDeMétodoLidaPelo[!java|scala|c]Compilador[/!][!python]Interpretador[/!]()[!java|c];[/!] [!java|scala|c]//[/!][!python]#[/!] tudo isto é ignorado
    outraChamada()[!java|c];[/!] [!java|scala|c]/* Isto aqui
                   também é ignorado */[/!]
    [!python]''' Isto aqui
    também é ignorado  '''[/!]
    maisUmaChamada()[!java|c];[/!]

Existe um terceiro tipo de comentário em Java, entre /** e */, que é lido por um programa específico chamado JavaDoc para gerar automaticamente a documentação explicando como usar o código. Estes comentários devem seguir um formalismo bem preciso.

Os comentários de várias linhas são frequentemente usados para documentar como usar o código, enquanto os outros são usados para descrever como este código funciona.