Arquivo pela Tag: design
Código expressivo e programação funcional em Java com LambdaJ
Postado em 13. fev, 2012 por Raphael Lacerda and Geraldo Ferraz.
Há um certo tempo refatoramos o sistema que trabalhamos. Migramos de uma arquitetura definida pelo Fowler como Transaction Script (explicada nesse edição da MundoJ) para uma arquitetura essencialmente O.O Domain Model. Por incrível que pareça, o que mais nos chamou a atenção nesse processo não foi o fato de transferir a lógica de negócios para more »
Continue Lendo
Lançamento do livro Introdução à Arquitetura e Design de Software
Postado em 15. dez, 2011 por Paulo Silveira.
Depois de uma longa espera, temos o tão aguardado lançamento. O livro está sendo distribuído para as livrarias, e já é bem fácil encontrá-lo nas lojas online, como na Saraiva. Foi bastante tempo e trabalho para criar uma introdução abrangente, e ao mesmo tempo com uma necessária profundidade, de alguns dos principais tópicos da plataforma more »
Continue Lendo
Adequar o banco às entidades ou o contrário?
Postado em 09. ago, 2011 por Erich Egert.
Uma das features interessantes do Hibernate é gerar a Data Definition Language para criação da estrutura de tabelas do banco de dados (schema). Tudo que precisamos fazer é pensar em nosso modelo Orientado a Objeto que o banco é gerado automaticamente a partir das entidades. Aparentemente o processo de pensar na modelagem do banco de more »
Continue Lendo
Scala: os cuidados com encapsulamento
Postado em 26. jul, 2011 por Guilherme Silveira.
Um dos pontos difíceis de lidar em qualquer sistema está ligado com quebra de encapsulamento. Em Java, uma vez que o padrão de uma variável membro permite que ela seja acessada por fora do objeto, protegemos os dados através do modificador private e um getter: Enquanto a criação de getters é um padrão amplamente adotado, more »
Continue Lendo
TDD e sua influência no acoplamento e coesão
Postado em 17. fev, 2011 por Guilherme Silveira and Mauricio Aniche.
Escrever testes de unidade é uma prática cada vez mais adotada. Ela ajuda a verificar se tudo funciona como o esperado mesmo após mudanças, trazendo mais segurança para a equipe ao alterar o código. Mas os testes de unidade vão além, possibilitando a validação de um design. Um código fácil de testar tende a apresentar um bom design. more »
Continue Lendo
Perdendo ou ganhando tempo com testes de unidade
Postado em 10. dez, 2010 por Mauricio Aniche.
Durante as aulas e palestras sobre TDD e testes de software é bem comum ouvir perguntas relativas a “o que deve ser testado e o que não precisa ser testado”. Geralmente os exemplos inicials que encontramos na literatura sobre TDD são muito simplistas, nos levando a crer que devemos testar todo e qualquer método de more »
Continue Lendo
Em busca do nome adequado: métodos, variáveis e classes
Postado em 08. out, 2010 por Guilherme Silveira.
É muito comum após alguns dias de trabalho em um projeto perceber que as escolhas de nomes de classes e métodos não condizem com o que cada um representa. Isso acontece pois, com o passar do tempo, aumenta o nosso conhecimento sobre o domínio do problema. Também é natural surgir o desejo de mudança: a more »
Continue Lendo
Possibilidades de design no uso do seu Generic DAO
Postado em 26. jul, 2010 por Lucas Cavalcanti.
Muitas vezes, quando estamos criando nosso sistema temos a tentação de criar o GenericDAO para não ter que ficar repetindo as operações CRUD e listagens. O maior problema com o GenericDAO é que não necessariamente todas as operações fazem sentido para uma determinada classe. Daí o que fazer se, por exemplo, não faz sentido excluir more »
Continue Lendo
Então você quer ser um arquiteto Java?
Postado em 21. jul, 2010 por Paulo Silveira.
Durante o atual processo de revisão do livro de Arquitetura e Design de Software, discussões apareceram sobre o termo arquiteto. Antes de definir o que faz um arquiteto, há o termo arquitetura. O que é a arquitetura de uma aplicação? Uma pergunta difícil de responder. Entre as definições mais antigas, Roy Fielding possui um bom more »
Continue Lendo
HTML, CSS, Javascript e UX na nova formação da Caelum
Postado em 29. jan, 2010 por Anderson Leite.
A nova formação da Caelum tem o objetivo de aprofundar os conhecimentos numa área em constante crescimento. A formação tem a parceria da Locaweb e é composta dos cursos WD-41 | Design de Interação, Experiência do Usuário e Usabilidade e WD-43 | Desenvolvimento Web com HTML, CSS e JavaScript. User Experience Ao navegar na web, more »
Continue Lendo
Livro Arquitetura e Design de Software: mais 4 tópicos liberados!
Postado em 04. nov, 2009 por Sérgio Lopes.
Atenção! O livro já está a venda. Saiba mais no site oficial. Há três meses anunciamos o livro Arquitetura e Design Java, um livro que está em seu processo de finalização, fortemente baseado na experiência da Caelum com debates no curso de Arquitetura e Design, a adminstração do GUJ.com.br e esses anos de consultoria. Os more »
Continue Lendo
Pequenos objetos imutáveis e Tiny Types
Postado em 20. jul, 2009 por Jonas Abreu.
Uma das grandes preocupações que temos quando estamos desenvolvendo aqui na Caelum e nas nossas consultorias é como manter o código o mais expressivo possível. Expressividade está muito ligada a uma manutenabilidade maior do código, porque código mais fácil de entender costuma ter menos bugs. Uma das técnicas que usamos pra atingir esse objetivo são more »
Continue Lendo
DSLs não são para gerentes
Postado em 30. dez, 2008 por Fabio Kung.
Já vi e ouvi de muitas pessoas e em muitos lugares que Domain Specific Languages são uma ótima ferramenta para deixar o código tão simples de escrever, tão legível e tão parecido com uma linguagem natural (português, inglês), que serve para que não programadores possam escrever parte do código. A idéia é que o próprio more »
ASSINE NOSSO RSS



