Engenharia de software

45
Por que o SQL BETWEEN é inclusivo e não meio aberto?

Intervalos semi-abertos (ou semi-abertos, semi-fechados , meio-limitados ) ( [a,b), onde xpertencem ao intervalo iff a <= x < b) são bastante comuns na programação, pois possuem muitas propriedades convenientes. Alguém pode oferecer uma justificativa que explica por que o SQL BETWEENusa um...

45
Por que tantos namespaces começam com

Percebi que muitas empresas usam espaços para nome "nome de domínio reverso" e estou curioso para saber onde essa prática se originou e por que ela continua. Simplesmente continua por causa da prática rotineira, ou existe um excelente conceito de arquitetura que possa estar faltando aqui? Observe...

45
Quão necessário é seguir práticas defensivas de programação para códigos que nunca serão disponibilizados ao público?

Estou escrevendo uma implementação Java de um jogo de cartas, então criei um tipo especial de coleção que estou chamando de zona. Todos os métodos de modificação do Java's Collection não são suportados, mas há um método na API da região move(Zone, Card), que move um cartão da região em questão para...

45
Padrão do Construtor: Quando falhar?

Ao implementar o Padrão do Construtor, muitas vezes me vejo confuso sobre quando deixar a construção falhar e até consigo tomar posições diferentes sobre o assunto a cada poucos dias. Primeiro alguma explicação: Com a falha inicial, quero dizer que a construção de um objeto deve falhar assim que...