quinta-feira, março 23, 2006
Parei de brigar com Java
Tem um monte de coisas que eu não gosto no Java. Collections meia boca, Date e Calendar cretinos, falta de closures, "estupidamente" tipado e outras coisas mais.
Porém, tenho que reconhecer que ele tem partes excelentes, a nova api para concorrência (do Doug Lea), muitas APIs pra tudo que você puder imaginar, uma comunidade grande (Apache inclusa), excelente IDEs (como o Eclipse, IntelliJ, Netbeans).
Sem falar que eu trabalha fazem muitos anos com Java, então tenho um domínio da linguagem muito bom.
Então, decidi que ao invés de ficar reclamando como sempre, vou implementar as idéias que eu gosto (a maioria roubada de Smalltalk e Ruby) e fazer o melhor possível com o Java, usando o que é bom dele. Não dá pra fazer milagres, mas dá pra melhorar bastante.
Minha Wishlist:
- Collections: Por enquanto, acho q vou me limitar a usar o Apache commons
- Date e Calendar: ("muitas APIs") vou começar a usar Joda-Time. Parece muito boa!
- Closures: Isso não tem muito jeito. Já via algumas libs legais pra Closures (tem uma aqui muito boa) Mas Closures em Java continua não sendo fácil de usar. Principalmente porque a sintaxe fica desajeitada e porque as coleções não suportam elas (justamente onde são mais úteis). Vou usar o que tem do Apache e provalemente criar uns helpers para classes anônimas, se eu já não achar isso na net.
- Structs: Tipo beans, mas dinâmicos. Tem o Apache commons pra beans, bem útil. Mas vou criar umas pequenas estruturas para mim. Ia ser legal achar um nome tipo "Beans" :D Sei lá... o que é menor que um feijão (ou grão) e mais gostoso? "Berries"? "Café solúvel"?
Vou ver se junto tudo, faço um Jar legal e adiciono nos meus projetos.
Aquela história: "não adianta reclamar se você não vem com alguma solução"
Assinar:
Postar comentários (Atom)
JavaBeans são uma especificação de componentes e não estes registros que as pessoas insistem em utilizar numa aplicação dita OO :P
ResponderExcluir"Esses registros" são na verdade o bom e velho "Data Transfer Objects", mas eu gosto deles mais dinâmicos. Pode não ser "muito OO", mas tem hora que são muito úteis. Cabe ao programador saber usar direito, não é? :)
ResponderExcluirLi nalgum lugar que Java 7 vai ter closures.
ResponderExcluirÉ uma das coisas que eu me amarro em ruby...