O que significa "TODO stub de método gerado automaticamente"? [fechadas]


9

Estou usando o eclipse para a programação do Android e, aqui e ali, vejo a instrução "TODO método de geração automática".

Entendo que esses métodos foram gerados automaticamente pelo eclipse na criação de classes e outras atividades de gatilho, mas não entendo a necessidade de mencioná-lo em todos os lugares.

Qual é a necessidade de mencioná-lo em todos os lugares repetidamente?


11
você pode alterar o modelo no Eclipse se você não gostar dele
DPM

3
Esta pergunta parece estar fora do tópico porque não demonstra um entendimento mínimo do IDE que está sendo usado.
Jim G.

Respostas:


9

TODO é uma das várias palavras-chave padrão que indicam tarefas a serem executadas no Eclipse. Em windows-> Preferências-> Java-> Compilador-> Tags de Tarefas, você deverá ver essas palavras-chave. Pensa-se adicionar um comentário com esta palavra-chave para indicar automaticamente as coisas que ainda precisam ser concluídas, o que é conveniente se você usar essas tags de tarefa.

No entanto, se você não os usar, modifique os modelos de código (Preferências-> Java-> Estilo de Código-> Modelos de Código) para eliminar esses comentários.

Em particular:

  • Código-> Corpo do método
  • Código-> Corpo do construtor
  • Código-> Captura do corpo do bloco

5
É mais do que apenas o Eclipse que suporta comentários do TODO - NetBeans, Visual Studio, JetBrains e outros também fornecem a funcionalidade da lista de tarefas extraída dos comentários no estilo do TODO. Além disso, isso não responde à pergunta - o que o comentário no estilo TODO significa e como é valioso.
Thomas Owens

2
Prefiro o comportamento do Visual Studio (ReSharpers?) De gerar stubs que, throw new NotImplementedException();por serem muito mais difíceis de serem ignorados por um esquecido, do que um método vazio com falha silenciosa.
Dan Is Fiddling Por Firelight

11
@ThomasOwens Ele nomeou eclipse, não NetBeans, Visual Studio, JetBrains e outros. Além disso, é exatamente isso que TODO significa e como é usado.
Neil

11
@DanNeely I assim também, é por isso que os meus modelos de código gerado automaticamente no Eclipse olhar como este:throw new UnsupportedOperationException("Auto-generated method stub"); // TODO Auto-generated method stub
Simon Lehmann

16

O Eclipse cria apenas métodos vazios que retornam nulos (daí "stub"). Os comentários são inseridos para lembrar ao desenvolvedor que ele provavelmente desejará fazer algo nesses métodos; caso contrário, por que eles deveriam existir? Você deve excluir os comentários quando fizer isso.

Se você vir esses comentários em todo o lugar, (se realmente contêm implementações), os desenvolvedores são preguiçosos ou acreditam que os comentários têm algum outro objetivo e, portanto, não os excluem, ou é uma indicação de design fraco, geralmente interfaces que são muito grandes e têm implementações (e usuários) que na verdade não usam todos os métodos da interface.


7

Muitos IDEs, incluindo o Eclipse, usam "TODO" em um comentário para gerar listas de tarefas. Essas listas de tarefas incluem o texto do comentário e o arquivo e método em que o comentário está. Isso permite que todos que usam uma ferramenta com essa funcionalidade gerem listas de itens que ainda estão abertos. Existem também alguns outros identificadores comuns, como FIXME ou XXX, que têm funcionalidade semelhante em alguns IDEs. Esta pergunta no Stack Overflow pergunta sobre as palavras-chave de comentário no Eclipse e fornece algumas informações adicionais.

Quando você gera automaticamente algumas funções, é esperado que você insira sua própria implementação. Ele adiciona o stub apropriado para que seu código seja compilado, mas adiciona os comentários para que você possa encontrar rapidamente métodos que precisam ser implementados. Observe que algumas funções geradas automaticamente, como funções geradas automaticamente toStringe hashcodenão contêm esses comentários porque não é esperado que você as modifique.

Existem maneiras de desativar a inserção delas, editando os modelos usados ​​para criar código gerado automaticamente, se isso lhe incomoda muito. No entanto, eles são úteis. Simplesmente pesquisar na sua base de código por coisas como TODO e FIXME pode ser a base de uma lista de tarefas, se combinadas com um comentário decente sobre o que precisa ser feito, especialmente em projetos menores.


4

TODO significa simplesmente "A FAZER", o stub é gerado, mas o desenvolvedor ou programador precisa adicionar o código conforme necessário.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.