Engenharia de software

55
Qual é a diferença entre recursão e corecursão?

Qual a diferença entre estes? Recursão Corecursão Na Wikipedia, há pouca informação e nenhum código claro explicando esses termos. Quais são alguns exemplos muito simples que explicam esses termos? Como a corecursão é o dual da recursão? Existem algoritmos corecusivos...

55
O que se entende por: “Um usuário não deve decidir se é um administrador ou não. Os privilégios ou o sistema de segurança deveriam. ”

O exemplo usado na pergunta passa dados mínimos nus para uma função que aborda a melhor maneira de determinar se o usuário é administrador ou não. Uma resposta comum foi: user.isAdmin() Isso gerou um comentário repetido várias vezes e votado várias vezes: Um usuário não deve decidir se é um...

55
Como escrever testes de unidade antes de refatorar?

Eu li algumas respostas para perguntas de uma linha semelhante, como "Como você mantém seus testes de unidade funcionando ao refatorar?". No meu caso, o cenário é um pouco diferente, pois recebi um projeto para revisar e alinhar com alguns padrões que temos; atualmente, não há testes para o...

54
Por que tanta popularidade com Python? [fechadas]

Além de ser incomodado com o espaço em branco como sintaxe, não sou um odiador, apenas não fico fascinado com o Python. Aprecio a poesia de Perl e programei belos serviços da Web no bash & korn e shebang gnuplot. Escrevo documentos troffe não me importo com o REXX. Não encontrou o tcl mais...

54
Você realmente escreve 'código limpo'? [fechadas]

Eu vi alguns programadores ajustando seu código repetidamente, não apenas para fazê-lo 'funcionar bem', mas também para 'parecer bom'. Na IMO, 'código limpo' é na verdade um elogio, indicando que seu código é elegante, perfeitamente compreensível e sustentável. E a diferença surge quando você...