Thursday, August 31, 2006

Frase do Dia

"Qualquer tolo escreve código que o computador enteda. Bons programadores escrevem códigos que humanos possam entender."
Martim Fowler

Sunday, August 20, 2006

Pq Java ?

Muitas vezes vejo pessoas comentando, que o desenvolvimento java é muito complicado. Ñ só a respeito das linhas de código, e sintaxe da linguagem, mas também em outros assuntos como Orientação à Objetos, Design Patterns, UML, Framework, Arquitetura, Camadas, etc...

Normalmente as pessoas que fazem esses comentários vivam um paradigma bem diferente de desenvolvimento de software, aonde as coisas eram um pouco mais simples, ñ existia uma preocupação com processo de desenvolvimento, reutilização, componentização, flexibilidade.
O mundo evolui, TI evolui... As pessoas precisam evoluir!

Comentários como: em php, ou até delphi, era muito mais fácil de fazer, me deixam um pouco incomodado. Concordo em que alguns cenários, a utilização do php poderia ser bem mais simples do que o Java com JSP e Servlets. O problema, na realidade, é saber reconhecer o cenário, a situação, e tentar aplicar a melhor solução.

Um faz de contas:
Construção de um sistema, permitindo que o cliente faça pedidos a uma lanchonete na web. O sistema é bem simples, existem algumas restrições, o cliente deve possuir o cadastro na lanchonete com um código pessoal para poder efetuar o pedido, código esse que deverá ser informado na conclusão do pedido.

Para este cenário o uso do php, seria perfeito. Ñ precisaria de java (jsp e servlets), e muito menos do uso de J2EE (EJB ...), talvez não necessite nem me preocupar com uma definição de domain model, oo, uml, o sistema é tão básico...
Mas e se essa lanchonete, após alguns anos viesse a se tornar um McDonald's? Essa abordagem simplista (ao extremo) atenderia?

Esse é um tema complexo para apenas um post, mas de qualquer forma o importante é ressaltar que as pessoas precisam evoluir, tentar acompanhar o que está acontecendo no mundo, e ñ apenas no seu dia-a-dia!

Wednesday, August 16, 2006

Converter Domain Model em JSF

Aqui

Monday, August 14, 2006

Setando var's de ambiente no Ubuntu

Pra quem teve problema com o apt-get do ubuntu e ñ conseguiu atualizar a versão do java, assim como eu, aqui vai a dica pra fazer na "unha" :

O arquivo aonde informamos as var's de ambiente é o /etc/bash.bashrc, portanto entre via terminal e digite: sudo gedit /etc/bash.bashrc

No fim do arquivo informe as var's de ambiente (mais ou menos assim):
JAVA_HOME="caminho" CLASSPATH="$JAVA_HOME:JAVA_HOME/lib:$."
PATH="$JAVA_HOME/bin:$PATH" export JAVA_HOME CLASSPATH PATH

Saturday, August 12, 2006

An Architect's Perspective on Application Quality: Part 2

Continuação, o artigo enfatiza a questão do "processo". Gerenciar as exigências (funcionais e ñ funcionais) que o projeto deve satisfazer, é uma questão fundamental e deve ser avaliada com muita atenção. Conversar com o cliente sobre a estratégia na busca por qualidade, justificando a questões envolvendo custo, estar bem preparado para avisar sobre os riscos e eventuais problemas caso o cliente ñ concorde em pagar por qualidade. Um outro ponto tocado (novamente), foi a questão de comunicação entre o time!

Saturday, August 05, 2006

Faces no JBoss

Algum tempo atrás encontrei alguns problemas ao rodar faces no JBoss, sofri um pouco com este problema. A versão do JBoss era 4.0.2, e desenvolvimento faces com myfaces. Mesmo empacotando o aplicativo com todas as lib's necessárias, ao rodar ñ funcionava. O problema é que para rodar faces no JBoss (Tomcat) é necessário a pasta instance..\deploy\jbossweb-tomcat55.sar\jsf-libs com os jars da implementação faces que vc estiver rodando, no meu caso myfaces. Senão me engano a partir da versão 4.0.4 do JBoss, esta estrutura é default, mas com os jars do myfaces.

Atualmente estou desenvolvendo com somente com o WTP do Eclipse 3.2, e até o momento esta atendendo perfeitamente ao esperado.

Thursday, August 03, 2006

Trabalho em equipe

Depois de ler este post no blog do Helder, sobre a Catedral de Colônia, fiquei impressionado com o processo de construção desse monumento. As obras foram iniciadas em 1248 e concluídas em 1880! Mais de 600 anos envolvendo este processo... muita coisa aconteceu, muito tempo se passou, mas mesmo assim o projeto foi concluído, com pequenas mudanças (acredito que não tão significativas) no projeto inicial.
Fantástico, isso muda o meu conceito de trabalho em equipe, organização, fé e vontade na conclusão de algo que se considera importante. Se Deus quiser, algum dia caminharei sobre estes lugares.

Wednesday, August 02, 2006

2 instâncias de jboss...

Rodar o JBOSS mais de uma instância na mesma máquina, simulando 2 ambientes, em um cenário distribuído ou não, não é tão complicado.
Normalmente as 2 estruturas server's estarão abaixo de um mesmo %JBOSS_home%\server. A grande sacada é adicionar mais um endereço IP para a máquina, além do atual. Imagine que já exista o IP 10.0.0.1, no windows xp, vc iria até Conexões Rede -> Conexão Local -> Propriedades -> (selecione) Protocolo TCP/IP -> Avançado ! Pronto, agora vc adiciona um novo IP, por exemplo 10.0.0.2.

Depois disso é só informar em cada uma das instâncias (server) qual IP ela vai estar atuado, por exemplo:
>%JBOSS_home%\bin\run -c instancia1 --host=10.0.0.1
>%JBOSS_home%\bin\run -c instancia2 --host=10.0.0.2

Bem melhor do que ter de mudar cada porta dos serviços do jboss, para subir em um mesmo ip...