RSS RSS feed | Atom Atom feed

Muitas rodas... mas com aros diferentes...

hehe.. pois bem... eu li o artigo de nosso companheiro Vitor Pamplona (Também disponível no InfoBlogs) e fiquei instigado a responde-lo, não na sua totatilidade... pois concordo com alguns pontos referenciados por ele... mas em parte...

Quanto a sugestão dele de utilizar diversos ports para construcao de aplicações é algo bem interessante... porem cai no grande problema que eu acho que é a plataforma .Net... voce ter um milhão de componentes... todos IMPORTAVEIS... um belo exemplo ? Veja os componentes visuais do tipo "editor" , componentes de segurança... componentes de criptografia... mais de 80% dos componentes em .Net são meros wrappers para DLL's... o que deixa qualquer codigo mais bem elabora simplesmente IMPOSSIVEL de ser portado.... que é o mesmo motivo que não gosto da proposta do mono... pois acho uma tremenda mentira... ele não está nem perto de ser uma implementação do .Net para linux... e sabe por que ? Simples... porque os milhoes de wrappers para dll's do windows nunca vão deixar ele ser... e não importa quanto o sr. Miguel de Icaza tente escrever codigo... .Net é uma SOLUÇÃO... é a junção de tudo que existe no mundo Microsoft... eh SQLServer , é Active Directory e WCF... é WPF , é DirectX 10 é tudo ao mesmo tempo agora... e o que o Mono vende é uma ilusão de ótica...

Estes motivos são mais do que suficientes para eu não gostar de wrappers nativos para TUDO... Veja o exemplo do Tomcat... em sua versão 6 o sistema de I/O não bloqueante é feito por uma DLL nativa... ae vem a pergunta: Java falhou ? Ai vem um louco e faz o tal do Grizzly que se mostra muito mais rapido em quisito de I/O que o Tomcat6 e é feito 100% em puro java... (usando java.nio), agora PARA QUE ? Simples... para aproveitar os beneficios da plataforma Java... as otimizações da JVM... e MAIS DO QUE NUNCA... para não ficar carregando com um saco de DLL's e .SO para tudo quanto e lado e sofrer com 413 versoes da GLIBC do linux... ou não morrer de desespero com o suporte a Threads do windows 9X... PREFIRO SIM um codigo 100% puro java... pois é sentar e rodar... e não me preocupar com dezenas de dependencias...e isso no deployment final importa.

O que não concordo é ACEITAR uma performance pífia (como a da ImageIO) só para poder dizer "FIZ 100% EM JAVA !!!!" , ae devo concordar... META UM WRAPPER E SEJA FELIZ... mas me dizer que fazer um milhão de wrappers é a solucao ? po... sem chance... entao programa em C/C++ de vez... Dar manutencao em dezenas de codigos... gerar JNI e dar manutencao as mesmas em projetos grandes é loucura...

Agora escrever Wrapper é fazer PORT de algo ? Por favor... quando voce tiver com um monte de conflitos de versões de bibliotecas nativas voce vai ver como é lindo ter tudo como bind JNI.

Concordo que refazer a roda por refazer é besteira... porem quando existe um ganho... vira vantagem...

Mono para mim não é opção... infelizmente... admiro LOUDS... mas acho que ele está empolgado demais com algo que ainda "só promete"... O que o mono faz é fazer uma SALADA de solucoes que funcionam +/-, são VOMITADAS ao pobre usuario e ele que SE VIRE... que instale 200 milhoes de dependencias no seu linux E SEJA FELIZ...

SWT para mim é SIM voltar no tempo... acho FEIO... no linux é BEM MAIS LENTO que o Swing e no MACOS é uma BOMBA tambem... é simplesmente uma CARROÇA... e isso qualquer usuario sensato de eclipse no MAC pode dizer isso... Suporte a 64 bits ? DEZENAS DE MESES para o pessoal da IBM tomar vergonha na CARA e portar... Desenvolvimento Visual ? A IBM veio com a PORCARIA do VEP e agora nem suporte dá mais... e o tal do Swing complicadissimo ? Bem... somente pessoas cegas não veem que ele evolui.... a API pode até ser que não... mas projetos como Beans Binding... Swing App Framework , Genesis e Matisse vem deixando o desenvolvimento mais simples e produtivo... convido a testarem o Matisse do NetBeans 6.0 e ter a pachorra de dizer que desenvolver em SWT é mais simples... e mais produtivo...

A Sun erra ? Quase todos os dias... mas IBM está bem longe de ser meu referencial de "empresa amiguinha e comprometida com o bem estar do desenvolvedor " SWT está bem longe de ser uma "alternativa" inventada pela IBM e está bem mais perto de uma "birra imbecil" por não ter participado mais ativamente da criação do swing... uma birra de anos atras e que tem até hoje por besteira.

Outra coisa... Swing é feio ?

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

Pronto... deixa ele com a cara do Windows ou Linux e mete bronca... Java SE 6 evoluiu muito nesse quisito.... deixar a aplicação com um L&F nativo mais amigavel...


Quanto ao Java no MACOS... eu concordo que está bem longe de ser classificado como bom... e se existe uma culpada na estoria toda é a Apple... QUE NÃO DÁ ATENÇÃO QUE DEVERIA ESTAR DANDO AO JAVA.... porem... isso não é uma exclusividade do Java... a Apple não está nem ai PARA NINGUEM... acha que o negocio é Objective-C , Safari e MacOS... muito legal... Leopard revoluciona ? na mina opinião não... é uma porcaria... por que ? simples... a Apple faz os produtos pensando não no mercado... e sim nela mesma... exemplo ? o que o usuario quer ? comparar um mp3 player plugar e ser feliz... e não ter que comprar um Mac para poder usar o iTunes para ouvir musica... faz isso ? sim... mas com uma COMPRA CASADA... e eu não acredito que isso seja uma forma legal de se viver...Sistema operacional feito pensando numa revolução que está bem longe de suprir a verdadeira necessidade do usuario.

Eu agradeço todos os dias da minha vida por o Bill Gates ser dono da Microsoft... prq se Steve Jobs fosse dono... o MUNDO seria um péssimo lugar para se viver... Bill Gates monopolisa ? hahaha... pense num cara que ergue um monopolio de ideias , pensamentos e produtos sem ao menos ter mercado ? Compre um iPod e voce vai perceber do que estou falando.

Espero não ter ofendido ninguem... pois não foi a intenção deste post....