Estou refatorando o conjunto existente de classes de teste java para testes automatizados de interface do usuário. Às vezes, acabo fazendo grandes alterações no arquivo de classe ou reformulando-o completamente. Isso me faz pensar que, quando estou reescrevendo a classe inteira, devo alterar o nome do autor na seção de comentários para o meu?
Estou sendo ganancioso? ou será útil ver meu nome e me perguntar em caso de dúvida?
refactoring
Tarun
fonte
fonte
Respostas:
Realmente depende ...
Se você acha que há uma pequena chance de alguém mais tarde se interessar em perguntar ao autor original, digite o nome dele no código. Se você acha que alguém pode estar interessado em perguntar pessoalmente, informe seu nome. E se você acha que ambos podem ser possíveis, deixe os dois nomes (ou um comentário como "baseado no trabalho de ...).
Obviamente, quando o uso do controle de origem é obrigatório em seu local de trabalho, e essa é a única maneira de obter acesso às fontes, salve a confusão e retire todos os comentários de autores da fonte. No meu local de trabalho, por exemplo, temos muitos arquivos de origem no controle de origem, onde não nos preocupamos em escrever nenhum nome nas fontes. Se eu quiser saber quem é responsável pelo arquivo, ou foi no passado, ou por uma alteração específica, o TortoiseSVN me produzirá facilmente um log para isso.
Por outro lado, temos muitas macros VBA, escritas por alguns caras, repassadas para outros caras (alguns deles deixaram a empresa ao longo dos anos) e foram modificadas muito, tudo sem usar o controle de origem. Felizmente, os comentários desses arquivos geralmente contêm nomes de autores e algum tipo de log de histórico.
fonte
Acabei de encontrar outro post em que o OP estava perguntando se o nome do autor deveria estar no cabeçalho do arquivo e parece que pelo menos 2/3 das pessoas que responderam disseram que o nome nem deveria estar listado e que você deveria usar o controle de versão para basta acompanhar quem alterou o arquivo. Não sei o que aconteceu com esse post, mas agora não consigo encontrá-lo. <- (daí "OP" anônimo)
Pessoalmente, acho o autor listado no cabeçalho do arquivo útil, mas por um motivo um pouco diferente (e isso pode não estar relacionado a outras pessoas em seus ambientes). Embora tentemos praticar a propriedade da comunidade e frequentemente trabalhe em várias partes do projeto, tendemos a ter poucos membros da equipe que conhecem determinadas áreas do código muito mais intimamente do que outras. Portanto, quando alguém (especialmente numerosos prestadores de serviços que vão e vêm) abre um arquivo que nunca viu antes, o autor se torna o candidato. Ele pode não ser o único colaborador, ou mesmo o majoritário, mas, tendo o nome no topo, ele reconhece ter certa responsabilidade na distribuição de conhecimento / informação sobre o código para o restante da equipe. Podemos listar mais de uma pessoa no cabeçalho, se várias pessoas realmente contribuíram e se sentem responsáveis.
Acho frustrante quando tenho uma pergunta sobre um arquivo e preciso recorrer ao controle de versão para identificar a pessoa principal ou mais experiente. Depois, acabam passando de um cara para o outro, pois todos negam realmente saber o que o código faz ... eles apenas precisavam entrar e consertar um bug ou dois.
Essa prática funciona em nossa equipe porque não temos transferências. A menos que uma pessoa saia, ou se mude para uma equipe diferente, esse código / projeto permanecerá com a pessoa e com nossa equipe. Obviamente, se as pessoas que mantêm o código não são iguais às que o escrevem, ninguém se importa com quem está listado no cabeçalho.
Portanto, à luz da minha opinião sobre os cabeçalhos de arquivo, eu diria que se você alterasse 80% do arquivo e sentir que agora é o principal responsável por todas as perguntas (e provavelmente deve se sentir assim), sim, vá adiante e atualize o cabeçalho do arquivo para ter seu nome nele. Se você se sentir mal por remover a pessoa anterior, também poderá deixar o nome dela lá, pelo menos por enquanto. Você sempre pode perguntar ao autor original e tenho certeza de que eles não se importarão nem um pouco com o fato de você ter alterado o nome, pois estou assumindo que não há nenhum sentimento difícil sobre você alterar 80% do arquivo em si.
UPDATE: Encontrou essa postagem . Não tenho idéia de como consegui recuperar algo de agosto. Acabei de ler The Pragmatic Programmer e, no capítulo anterior, os autores falam sobre a assinatura de trabalho e prestação de contas (o outro post mencionou, é por isso que procurei). O livro faz todo o sentido e, agora que penso nisso, talvez devamos introduzir uma política de equipe para que quem estiver listado como autor seja incluído em todas as revisões de código do arquivo em questão. Não importa quem alterou o arquivo pela última vez ou mais no SVN, o autor é o proprietário e o responsável.
fonte
Não acho o nome do autor muito útil. Como essa pergunta mostra, geralmente não há um autor único, portanto, nomear "o autor" não é possível.
É claro que você poderia incluir uma lista de todas as pessoas que fizeram grandes contribuições, mas já pode obtê-lo no log de controle de revisão - então, qual é o sentido?
No meu projeto, não há informações do autor na maioria dos arquivos. Se você tiver uma pergunta, basta olhar para os logs e, geralmente, é óbvio que uma ou duas pessoas fizeram a maior parte do trabalho, então você as pergunta.
Editar
A resposta assume um projeto usando o controle de versão. Se você não usar (consistentemente) o VC, colocar um autor (lista) e talvez algum histórico de alterações em um arquivo possa ser uma solução viável. Ainda assim, você provavelmente deve começar a usar o VC o mais rápido possível. Nesse caso, veja acima :-).
fonte
so what's the point?
Projetos que não estão sob um vcs, projetos que em algum momento migraram para um vcs diferente (nem todos os esquemas de migração permitem a migração do histórico, infelizmente) e projetos que usam mais de um vcs ao mesmo tempo - alguns projetos do FLOSS adotam esse aproximar para tornar mais fácil para as pessoas a contribuir, sem limitá-las a uma vcs (SVN pessoas acham git rígidos, as pessoas git encontrar svn inutilizável, e nós hg as pessoas riem de ambos)Se o arquivo foi modificado significativamente, deve ser aceitável adicionar seu nome ao arquivo como alguém que saiba algo sobre ele.
fonte
O criador do arquivo de origem deve / deve sempre (IMHO) ser mencionado no arquivo de origem. Isso, com bons comentários no cabeçalho, deve mostrar por que o autor desenvolveu a fonte e qual era seu pensamento ao escrever o código. Quanto ao mantenedor do código, adicionar o nome do mantenedor é crucial para o rastreamento do controle de origem.
A nomeação do autor, IMHO novamente, deve incluir a versão fonte do código, fora do sistema de controle de versão, a primeira data em que a alteração ocorreu, bem como o número da solicitação de alteração. O motivo é que, se a decisão de alterar o VCS surgir, há um histórico da versão do código, quem era o autor e o número do pedido de alteração ao qual os desenvolvedores podem se referir (se eles precisam saber por que o mantenedor fez o que / ela fez). Assim, em nossa organização, nosso formato é o seguinte:
fonte
Gosto de ver o nome do autor original, apenas para encontrar alguém para iniciar minha busca por respostas sobre o código. (O autor geralmente não se lembra, mas é pelo menos um tiro!)
Eu recomendaria que você simplesmente adicionasse seu nome abaixo do autor original.
Não há necessidade de substituir o nome da outra pessoa, pois ela pode conhecer alguns aspectos da empresa original que você não precisa, e outros que a seguem depois de você também precisam conversar com essa pessoa.
fonte
Minha política sobre os comentários do autor é:
Se você tiver alguma dúvida, não importa quem é o autor do arquivo - é importante quem é o autor da porção do arquivo que você está editando. É para isso que
[git/svn/whatever] blame
serve.OMI, o autor precisa ir embora.
fonte