0Pricing
Dart Academy · Aula

Entrada Padrão, Saída Padrão e Argumentos do Processo

Crie programas CLI interativos.

Entrada Padrão, Saída Padrão e Argumentos do Processo é uma aula grátis de Dart Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Dart Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Dart Academy inclui 4 aulas no total.

Três streams padrão

Programas de linha de comando se comunicam por três canais: entrada padrão para entrada, saída padrão para saída normal e erro padrão para erros.

Saída padrão versus impressão

A impressão adiciona uma quebra de linha e vai para a saída padrão. Para ter um controle mais preciso, escreva diretamente com stdout.write, sem adicionar uma quebra de linha.

stdout.write('Loading');

Erros vão para o erro padrão

Envie avisos para stderr, não para a saída padrão. Assim, a saída real permanece limpa quando os usuários direcionam seu programa para outro lugar.

stderr.writeln('Could not find file');

Ler uma linha de entrada

Faça uma pergunta ao usuário e obtenha a resposta dele com stdin.readLineSync. A execução fica pausada até que ele pressione Enter.

final name = stdin.readLineSync();

A entrada pode ser nula

readLineSync retorna uma String nullable. Se o stream for fechado sem entrada, o resultado será null; portanto, trate esse caso.

final answer = stdin.readLineSync() ?? '';

Um pequeno loop de prompt

Combine uma escrita e uma leitura para criar um prompt. Mostre uma pergunta, leia a resposta e aja de acordo com ela, tudo em poucas linhas.

stdout.write('Name? '); final n = stdin.readLineSync();

Argumentos da linha de comando

Seu main pode aceitar uma List de Strings e argumentos. Tudo o que o usuário digitar depois do nome do programa será colocado ali, na ordem.

void main(List<String> args) { print(args); }

Ler um argumento

Acesse os argumentos pelo índice, como em qualquer lista. Sempre verifique args.isEmpty primeiro para que a ausência de um argumento não cause uma falha.

if (args.isNotEmpty) print(args[0]);

Analisar opções com argumentos

Para CLIs reais, o pacote de argumentos transforma sinalizadores e opções em um resultado analisado e organizado, em vez de exigir manipulação manual de índices.

import 'package:args/args.dart';

Definir um código de saída

Informe ao shell como tudo terminou usando exit. Zero significa sucesso; qualquer outro valor sinaliza um erro para os scripts que chamarem você.

exit(1);

Modo de eco desativado

Para senhas, oculte os caracteres digitados definindo stdin.echoMode como false antes de ler a linha.

stdin.echoMode = false;

Verificação rápida

Para onde uma ferramenta de CLI deve enviar mensagens de erro para que a saída direcionada permaneça limpa?

Recapitulação

Agora você sabe escrever na stdout e no erro padrão, ler a entrada com a entrada padrão, aceitar argumentos de linha de comando e definir um código de saída. Sua CLI é interativa.

Perguntas Frequentes

A aula “Entrada Padrão, Saída Padrão e Argumentos do Processo” é grátis?

Sim — o texto completo de “Entrada Padrão, Saída Padrão e Argumentos do Processo” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Dart Academy, atualize para CoddyKit PRO. O curso de Dart Academy inclui 4 aulas no total.

O que vou aprender em “Entrada Padrão, Saída Padrão e Argumentos do Processo”?

Crie programas CLI interativos. Você pratica Dart Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Dart Academy?

Nenhuma experiência prévia é necessária. Dart Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Entrada Padrão, Saída Padrão e Argumentos do Processo”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Dart Academy?

Sim. Cada aula de Dart Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Leitura e Gravação de Arquivos
  2. Diretórios, Caminhos e FileSystemEntity
  3. Transmissão de Arquivos Grandes
  4. Entrada Padrão, Saída Padrão e Argumentos do Processo
← Voltar para Dart Academy