Engenharia de software

Perguntas e respostas para profissionais, acadêmicos e estudantes que trabalham no ciclo de vida de desenvolvimento de sistemas

2
Como se chama essa técnica de programação?
Eu me deparei com essa técnica de programação enquanto fazia programação em pares em uma entrevista e não conseguia encontrar o nome dela no google. A idéia é que você primeiro escreva a expressão que usa as variáveis ​​e depois escreva o código que calcula as variáveis ​​posteriormente. Para usar …

1
Uso do método padrão Java
Por décadas tem sido o caso que interfaces eram única única (apenas) para especificar assinaturas de método. Disseram-nos que este era o "caminho certo para fazer as coisas ™". Então o Java 8 saiu e disse: Bem, agora você pode definir métodos padrão. Tenho que correr, tchau. Estou curioso para …

8
“Preferir composição sobre herança” - é o único motivo para se defender contra alterações de assinatura?
Esta página defende composição sobre herança com o seguinte argumento (reformulado em minhas palavras): Uma alteração na assinatura de um método da superclasse (que não foi substituída na subclasse) causa alterações adicionais em muitos lugares quando usamos Herança. No entanto, quando usamos o Composition, a alteração adicional necessária ocorre apenas …


8
Equipe Scrum que não segue o princípio YAGNI
Em uma reunião do SCRUM, a equipe do produto estava debatendo sobre um recurso em uma API que será consumida pelo aplicativo móvel. Tivemos uma simulação que mostrou como a tela deveria ser e quais os principais elementos que ela deveria conter (um "layout"). Com base nisso e na discussão …





5
A "interface estática" é uma boa prática?
Recentemente, notei que há uma opção para ter métodos estáticos nas interfaces. Assim como nos campos estáticos da interface, há um comportamento interessante: eles não são herdados. Não tenho certeza se é útil nas interfaces reais a serem implementadas. No entanto, ele permite que o programador crie interfaces que são …
13 java  java8 



1
A metodologia TDD pode ser aplicada de cima para baixo?
Não estou claro como o TDD, a metodologia, lida com o seguinte caso. Suponha que eu queira implementar o algoritmo mergesort, em Python. Eu começo escrevendo assert mergesort([]) === [] e o teste falha com NameError: o nome 'mergesort' não está definido Eu adiciono def mergesort(a): return [] e meu …
13 tdd 



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.