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....







Re: Muitas rodas... mas com aros diferentes...

ponto de vista muito interessante.. Concordo com tudo....

Re: Muitas rodas... mas com aros diferentes...

Ótimo dyego! Esse seu texto foi bem um desabafo hein?! =) deu pra sentir a empolgação durante a leitura. Mas concordo com você em quase tudo, porém, as vezes usar coisas nativas em certos aspectos é muito bom, mas sabe o que é melhor de tudo? Você poder escolher! Se num projeto em específico certa funcionalidade não me agrada eu posso utilizar uma biblioteca nativa e mudar o comportamento, e a liberdade de você poder fazer o que quer, é imprescindível. Em todas as coisas temos aspectos bons e ruins, o importante é sabermos dosá-las. Abraços

Re: Muitas rodas... mas com aros diferentes...

Sem duvidas... liberdade de escolha é fundamental... e em informatica não existe o certo ou errado... existe a forma "mais adequada" de se resolver o problema...

Re: Muitas rodas... mas com aros diferentes...

Não vou discutir, só uns comentários. Quer saber o que é lentidão? Faça o que você disse: UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); e crie uma aplicação com JInternalFrame. O Matisse é muito bom. Mas, mais uma vez , o aspecto para o usuário é mais importante que o aspecto para o desenvolvedor. Portanto, mesmo sendo mais "produtivo" o é preferível o SWT, se ele for mais bonito para o usuário. Linux é um aglutinado de ports. Algo muito semelhante ao que você disse que era o Mono. Eu gosto desta aglutinação, porque é muito mais estável que qualquer coisa nova, vinda da Sun ou da Microsoft. Não defendo a IBM. Não to nem aí para ela. :) No resto, acho que concordamos :) []s

Re: Muitas rodas... mas com aros diferentes...

Sobre a importância de interfaces com o usuário e programação: http://www.codinghorror.com/blog/archives/000371.html Sobre o Linux ser um aglutinado de pacotes, essa é a explicação para o sucesso. Linux é uma plataforma extremamente bem feita. Ter pacotes que se aglutinam é bom porque vc pode confiar no que já está pronto e juntar pacotes diferentes para criar um novo serviço sem tanto trabalho. Some a isso algo como "apt-get" e veja no que dá: uma plataforma que gerencia pacotes infinitamente melhor do que o Windows. Alias, não sei porque a MS nunca se dispôs a copiar o esquema de repositórios/pacotes de algumas distro linux.

Re: Muitas rodas... mas com aros diferentes...

O sistema de varios pacotes de versoes diferentes do linux é realmente uma coisa muito boa, porem eh a sua desgraca tmb, pois a inconpatibilidade entre distribuicoes (e a piada do LSB) fazem com que os "desenvolvedores de caixinhas" , sim , esses mesmos... os responsaveis pela disseminacao do windows e seus programas , nao saibam como deixar funcional... eh versao de GLIBC... é versao de nao sei o q... e se for debian ? e se for red hat ? No Windows... é só instalar e pronto.... Nao gosto da maneira que a MS faz as coisas... mas no windows ela acertou ....

Re: Muitas rodas... mas com aros diferentes...

Poxa.. gostei do testo ;.. e principalmente falando "bem" da microsoft.. ou de algumas coisas boas que ela faz!

Re: Muitas rodas... mas com aros diferentes...

acho que tua opiniao eh meio "fechada".. tudo bem.. a ibm errou a apple errou a microsoft errou, a comunidade linux inteira e as milhares de empresas que patrocinam distros linux erraram... mas acho que cada um eh cada um.. naum concordo quando diz que a apple naum se importa com o usuario e praticamente "obriga" o usuario a fazer uma compra casada pra poder ter menos trabalho e não usar o itunes... tenho um ipod video e utilizo o ubuntu.. ql o problema? pq sou um usuario avançado? e a microsoft? naum erra quando obriga a ter o vista (aquela merda de sistema operacional cheio de bugs e incompatibilidades) pra ter o directx 10? tá certo tá certo.. naum eh uma compra casada.. mas e se eu tenho o win 98 ou 2000 e não quero comprar uma nova licenca? faço o que pra utilizar minha super placa de ultima geração? choro? usar eclipse em outras plataformas nunca foi problema... graças ao jse6, tanto o swing quanto swt estão indo muito bem no linux e mac-os... mas blz.. cada um eh cada um.. se todas as empresas se preocupassem com o usuario final.. a microsoft naum tinha o vista, o *unix seriam mais bonitos e apple teria preços mais "alcançaveis"...

Adicione um comentário Envie um TrackBack