segunda-feira, janeiro 30, 2006

JDeveloper - A salvação da lavoura ?


Estive pensando...

JDeveloper é uma das ótimas ferramentas que a oracle vem doando para a sociedade, e fui fazer download de sua versão 10.1.3 RC3 , para brincar um pouco... e tive a melhor surpresa de todos os tempos. JDeveloper se tornou uma ferramenta maravilhosa para desenvolvimento... além de free , ela conserva alguns aspectos que eu prezo em um aplicativo java de qualidade:

1 - Versatilidade no uso: Não é enrolado como algumas ferramentas livres
2 - Solução comercial já pronta para o uso: Você não precisa baixar 215 plugins , fazer 313 alterações nos XML da aplicação para ela se tornar READY TO USE em sua empresa , é só baixar e usar... já vem todo integrado , até mesmo com o OC4J , porem debuga em vários outros container
3 - Produto acabado para a comunidade e para as empresas: O que o JDeveloper é ? é sim um produto muito bem acabado , não é uma "previa do que vem por ae" como muitos "criadores de plugins" do eclipse fazem.

Inicialmente eu achei que estava exagerando... mas é simples... baixe você também, e teste o editor de "telinhas" (swing) , voce vai chorar de alegria... RÁPIDO E PODEROSO. A integração com containers J2EE ainda considero meio fraca , mas realiza o debug numa boa. JSF? inbutido por padrão , o melhor de tudo , tem reenderizadores para a tela, você vê o e escreve código JSF , semelhante ao Creator da Sun , porem muito mais tranqüilo , pois nao gera código proprietário.

A Unica coisa é que ele é bastante diferente de outros IDE's , realmente precisa aprender a mexer na criança antes de poder avaliar... mas acho que o pessoal do eclipse e do VEP vão ficar com inveja dos recursos

quinta-feira, janeiro 26, 2006

Gerenciamento de memória do Java





Em minhas andanças eu nao pude deixar de notar mais um ótimo "artigo" do pessoal da Argonavis sobre gerenciamento de memoria do Java 5 , bem... eu já fui em varias palestras do pessoal da argonavis... teve uma de WebServices que foi de dar sono... o cara explica TIMTIM por TIMTIM , mas no final dei valor pois existem varios pontos no funcionamento de algumas tecnologias que são essenciais para o entendimento da tecnolgia em questao , tudo em prol do endendimento HEHE.

Se você é daqueles que se interessa como as coisas funcionam , este PDF é para voce :)

quarta-feira, janeiro 25, 2006

Ajax - Solução dos Problemas ?




Muito se fala no tal do AJAX , tem gente que até chama de Web 2.0 a revolucao que o tal brinquedinho esquecido da MicroSoft anda fazendo pelas paginas web, sim ! a MicroSoft criou o Ajax a muuuuito tempo atraz , usou em alguns produtinhos e acabou esquecendo.

Agora com o resurgimento desta tenologia tem nego achando que é simplesmente botar essa nhaca na pagina e sair feliz... performance nem sempre é tudo... as vezes se sacrifica performance em favor de um código mais limpo e de fácil manutencao... Hibernate é um exemplo disso , JDBC direto é muito mais rapido... mas mesmo assim utilizamos um ORM para tornar a coisa toda mais "natural" ao aspecto OO.

Acho particularmente que o Ajax é uma boa alternativa se utilizado de forma conciente... separando a parte VISUAL do codigo propriamente dito... um belo exemplo disso é o framework padrao do J2EE , O JavaServer Faces... foi concebido para que você possa utilizar todo o poder do Ajax sem ter que mecher nenhuma linha do seu codigo... tudo isso apenas trocando sua implementacao. Como ele consegue isso ? simples... JSF é um padrao , nao um "framework" , entao hoje se você optar por utilizar a implementação da Apache , voce vai notar que o CORE está escrito na forma normal ( com refresh a cada submissao ) , mas existe alguns componentes em paralelo que utilizao Ajax para reenderizar ( pacote sandbox ) , muito interessante... mais ainda não suficiente... pois o que queremos é algo TRANSPARENTE , nada de programar com componentes especificos... queremos independencia nessa camada... existe uma implementacao que atende a estas espectativas... se chama AjaxFaces , ela implementa todo padrao em cima da comunicação via Ajax e a reenderizacao instantanea... é como trocar de sapato... nao requer pratica nem habilidade...

É isso que torna JavaServer Faces um framework melhor que qualquer outro... afinal... voce realmente tem independecia de fornecedor... se amanha seu cliente quiser pagar pelo AjaxFaces , muito bem... ele TEM OPCAO... agora se vc usar struts , tapestry, webwork2 vc esta condenado a esperar que os vendedores se mecham para adaptar.

Ajax é bom assim... transparente... tem alguns loucos que simplesmente jogao direto no JSP a chamada ao XMLHttpRequest e tratao tudo na mao... com gambiarras interminaveis de javascript e um codigo extremamente complexo de dar manutencao... como eu disse... loucos.

terça-feira, janeiro 24, 2006

Oracle's ADF Faces donation to Apache


Interessante....

A Oracle é uma empresa no mínimo interessante !!! , após um ano de "compras" ela agora vem doar um produto que oferecia como GRANDE DIFERENCIAL de seu Application Server ( OC4J ), quem comprasse seu maravilhoso container java receberia uma "licenca" do ADF Faces. Mas isso não foi de uma hora pra outra... antes ela havia tornado "gratis" seu produto... uma estrategia que esta sendo adotada por muitas gigantes do software...

Sempre tive alguns problemas em aceitar tecnologias OpenSource , mas definitivamente tudo que vem da apache ( ou quase tudo ) tem se mostrado incrivelmente estavel e de performance razoavel... Me lembro quando conheci Hibernate , após um ano tomando no rabo utilizando o iptables do linux para filtrar pacotes e balancear a carga , aplicando dezenas de patches nao oficias , e me perguntando "olha q legal , prq nao tornaram oficial isto ?" cheguei a conclusao que meu processor de física estava certo:

Quem inventou a tartaruga ?
R: Deus
Tartaruga sobe em arvore ?
R: Nao...
Entao se ela estiver lá em cima... DEIXA ELA LÁ... PORQUE ALGUM MOTIVO TEM...

Entao... seguindo este raciocionio... meus sonhos com o software livre desabaram quando apliquei o tal do 7(seven) layers no kernel do linux... aquilo só me fez perder tempo e crer que software livre NEM SEMPRE é algo comercialmente viavel... as vezes é melhor comprar algo do que usar um patch em cima de uma coisa q nao foi projetada pra fazer o que se pede...

Hibernate me parecia mais uma daquelas "ferramentas opensource" que fazem tudo da "maneira dele" matando a portabilidade e fazendo com que voce fique nas maos de um alucinado que trabalha das 2 da madrugada até as 8... somente nos dias ímpares e em madrugada de lua cheia... Na epoca utilizava os "maravilhosos" Entity Beans e arriscava meu rabo por eles... até o dia que fui forçado a aprender esta ferramenta... afinal... em minha empresa tinha uns bobos da cabeça querendo utilizar JDBC direto em um projeto grande... ou seja... ter a independecia do java... e a macarronada do JDBC , sendo mais uam vez preso ao banco de dados escolhido inicialmente... Tanto Gavin viu a necessidade de padronizar sua ferramenta que elegeu Hibernta 3.1 como uma implementação da especificacao EJB 3.0, tornando ela usável em ambito corporativo.

Quem sabe o pessoal do tapestry nao aprende um pouco com o Gavin e nao tenta contribuir para evoluir o padrao do JSF invez de ficar criando um software que tem quase que o mesmo "lado escuro" do software fechado.... uma vez que vc faz tudo com ele... vc definitivamente CASA com a solucao.