| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 10:06:16
|
victorwss
JWizard
![[Avatar]](/images/avatar/4ab232445f9b21b65dfdf6ea5f27f704.png)
Membro desde: 18/12/2007 14:46:00
Mensagens: 2409
Localização: São Paulo - SP
Offline
|
Bem pessoal, crio este tópico para debater acerca dos piores erros cometidos no java, o que poderia ter sido feito para evitá-los e como o mundo seria hoje se esses problemas nunca tivessem ocorrido.
O primeiro que considero é java.util.Date, java.sql.Date, java.sql.Timestamp, java.util.Calendar e java.util.GregorianCalendar. Acredito que todos que já trabalharam com datas no java já tiveram vontade de queimar em praça pública o imbecil que bolou essas classes por heresia.
Ter java.util.Enumeration e java.util.Iterator ao mesmo tempo também é uma idéia muito muito ruim.
Comentem!
|
Victor Williams Stafusa da Silva
Bacharel em Ciência da Computação - UFMT // Especialista em Desenvolvimento Java - CEFET/MT // Doutorando em Ciência da Computação - IME-USP
SCJP 6.0 - 19/12/2007 - PASS - 88% // SCWCD 5 - 17/05/2008 - PASS - 79% // SCJA - 09/09/2008 - PASS - 96% // SCSNI - 30/06/2009 - PASS - 68% // SCBCD 5 - 31/05/2010 - PASS - 95%
Próximos: SCJD (encalhado com o projeto), SCEA parte I (estudando). Algum dia desses: SCMAD, OCA, SCEA e SCDJWS.
Computação: uma ciência holística e esotérica!
E então veio Deus a terra e disse aos homens: Não dividireis por zero.
XML is a giant step in no direction at all. (Erik Naggum)
Arquitetura de sistemas: Eu prefiro ser essa metamorfose ambulante do que ter aquela velha opinião formada sobre tudo.
Diga não as drogas: Não use java.util.Vector.
Cuidado: Este usuário pode ter temperamento agressivo.
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live.
I am the maniac serial killer that knows where you live who will maintain your code.
É impossível falar de CMMI (Capability Maturity Model Integration) sem saber o que é CIMM (Capability Im-Maturity Model).
Se você escreve "concerteza", "concerteza" você andou matando aulas de português. |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 11:08:20
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Generics sem reification* foi uma péssima idéia. O próprio gerente da implantação do Generics no Java 5.0, o Neal Gafter, gostaria de ter incluído a reification, mas isso iria quebrar a JVM (que não iria ser substancialmente modificada no Java 5.0).
* Por exemplo: poder declarar List<int> e tal declaração usar internamente um array de int mesmo.
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 11:08:22
|
rafaelglauber
GUJ Master
![[Avatar]](/images/avatar/e9abec5e32203998211653b45023be1c.jpeg)
Membro desde: 07/09/2007 23:05:20
Mensagens: 1065
Localização: Feira de Santana
Offline
|
Muita gente pode não concordar, mas acho que exceções checadas e não checadas um saco!!! Isso é uma das seguranças que o Java tentou criar (assim como não trabalhar com ponteiro), porém essa acho que não ajudou em nada.
sobre a citada acima (Data), bem...sugiro que usem Joda Time é a única coisa que vou comentar!!!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 11:37:15
|
luistiagos
GUJ Expert
![[Avatar]](/images/avatar/98785ca89cfbbe933921bfe68a94553b.jpg)
Membro desde: 10/07/2006 10:37:23
Mensagens: 3161
Offline
|
sem duvidas a api de manipulação de dadas é a pior api feita no java q eu ja vi...
|
SCJP 1.5
SCJA 1.0
IBM DB2 Associate |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 11:38:46
|
bobmoe
GUJ Ranger
![[Avatar]](/images/avatar/9cc25407f209e031babdac7d3c520ccb.jpg)
Membro desde: 11/07/2006 20:45:48
Mensagens: 806
Localização: Sampa
Offline
|
Calendar e Date!!! Mexer com datas em java é horrível.
|
BOB - Roberto Nogueira - bobmoe.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 11:48:14
|
DaviPiala
Virtual Machine Man
Membro desde: 17/08/2007 19:17:35
Mensagens: 598
Localização: São Paulo
Offline
|
API de datas é uma desgraça!
Eu fico revoltado com alguns nomes de metodos principalmente na api de servlets tipo parametros init do contexto.
This message was edited 1 time. Last update was at 27/06/2008 11:49:44
|
Si temi more regat
Efamima dove tore
Infata dio re
Infa lati plastire |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 12:22:14
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
Bem uma recente foi na API de Scripting o ScriptEngineManager... O javax.script.ScriptEngineManager serve para gerenciar os motores de script, como o próprio nome sugere, o problema é q ao registrar um engine tem q criar uma nova instancia e registrar nessa nova instancia o Engine, até ai blz, o problema é q ao perder a instancia desta classe, e se em outra altura do código vc instanciar a classe vc tem q carregar outra vez o Engine... o q é bem meio sem noção, se ela mantivesse registado todos os engines que vão sendo registrados seria muitoooo melhor... mas tb para resolver este problema é fácil, implementar uma classe q faz isto, que mantem uma instancia do ScriptEngineManager como static e ir sempre ai buscar, mas não é algo padronizado. Até podiam ter feito um padrão parecido como nos JDBC Drivers. Mas blz, ninguém morre por isto...
This message was edited 1 time. Last update was at 27/06/2008 12:23:45
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 12:23:55
|
ramilani12
GUJ Master
![[Avatar]](/images/avatar/b597460c506e8e35fb0cc1c1905dd3bc.png)
Membro desde: 11/03/2005 01:23:30
Mensagens: 1944
Localização: Curitiba-PR
Offline
|
O tal do EJB 2.0/2.1 sem comentarios.
|
my delicious| follow me| linkedin |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 12:25:28
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
DaviPiala wrote:API de datas é uma desgraça!
Eu fico revoltado com alguns nomes de metodos principalmente na api de servlets tipo parametros init do contexto.
Falando em Servlets... doGet, doPost... são horriveis, pior impossível!
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 12:49:25
|
victorwss
JWizard
![[Avatar]](/images/avatar/4ab232445f9b21b65dfdf6ea5f27f704.png)
Membro desde: 18/12/2007 14:46:00
Mensagens: 2409
Localização: São Paulo - SP
Offline
|
eduveks wrote:
DaviPiala wrote:API de datas é uma desgraça!
Eu fico revoltado com alguns nomes de metodos principalmente na api de servlets tipo parametros init do contexto.
Falando em Servlets... doGet, doPost... são horriveis, pior impossível!
Que tal SingleThreadModel?
|
Victor Williams Stafusa da Silva
Bacharel em Ciência da Computação - UFMT // Especialista em Desenvolvimento Java - CEFET/MT // Doutorando em Ciência da Computação - IME-USP
SCJP 6.0 - 19/12/2007 - PASS - 88% // SCWCD 5 - 17/05/2008 - PASS - 79% // SCJA - 09/09/2008 - PASS - 96% // SCSNI - 30/06/2009 - PASS - 68% // SCBCD 5 - 31/05/2010 - PASS - 95%
Próximos: SCJD (encalhado com o projeto), SCEA parte I (estudando). Algum dia desses: SCMAD, OCA, SCEA e SCDJWS.
Computação: uma ciência holística e esotérica!
E então veio Deus a terra e disse aos homens: Não dividireis por zero.
XML is a giant step in no direction at all. (Erik Naggum)
Arquitetura de sistemas: Eu prefiro ser essa metamorfose ambulante do que ter aquela velha opinião formada sobre tudo.
Diga não as drogas: Não use java.util.Vector.
Cuidado: Este usuário pode ter temperamento agressivo.
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live.
I am the maniac serial killer that knows where you live who will maintain your code.
É impossível falar de CMMI (Capability Maturity Model Integration) sem saber o que é CIMM (Capability Im-Maturity Model).
Se você escreve "concerteza", "concerteza" você andou matando aulas de português. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 13:57:16
|
maior_abandonado
JWizard
![[Avatar]](/images/avatar/0d7c463832b871c20405a6c9296b5517.jpg)
Membro desde: 03/09/2007 11:30:08
Mensagens: 2694
Localização: sp
Offline
|
eduveks wrote:
DaviPiala wrote:API de datas é uma desgraça!
Eu fico revoltado com alguns nomes de metodos principalmente na api de servlets tipo parametros init do contexto.
Falando em Servlets... doGet, doPost... são horriveis, pior impossível!
kra eu so meio iniciante, desculpe minha ignorancia mais...pq???
|
espero ter ajudado...
falando nisso, caso seu problema tenha sido resolvido, edite o seu primeiro post e coloque um [RESOLVIDO] no titulo do tópico.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 14:15:51
|
walterfelipe
JavaChild
![[Avatar]](/images/avatar/c64107e33aa9fee83d57501f9a672344.jpg)
Membro desde: 08/01/2007 13:54:08
Mensagens: 136
Localização: Recife-PE
Offline
|
Concordo sobre a manipulação de datas. Mal d+
|
Walter Felipe
Apaixonado por estrada e motocicletas
Analista de Sistemas
Especialista em Engenharia de Software
SCJP - Sun Certified Java Programmer
SCWCD - Sun Certified Web Component Developer
http://www.cin.ufpe.br/~wfs |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 14:18:55
|
Adriano Almeida
JavaEvangelist
![[Avatar]](/images/avatar/080eb9c2c128e1337fcc84d8680f404c.jpg)
Membro desde: 13/09/2006 15:29:34
Mensagens: 386
Offline
|
para lançar uma NullPointerException programaticamente é bem estranho.
|
Twitter: @adrianoalmeida7
http://ahalmeida.com
http://blog.caelum.com.br

|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 14:32:37
|
victorwss
JWizard
![[Avatar]](/images/avatar/4ab232445f9b21b65dfdf6ea5f27f704.png)
Membro desde: 18/12/2007 14:46:00
Mensagens: 2409
Localização: São Paulo - SP
Offline
|
pafuncio wrote: para lançar uma NullPointerException programaticamente é bem estranho.
Tópico errado. Procure o tópico "EVGD: Códigos toscos"
|
Victor Williams Stafusa da Silva
Bacharel em Ciência da Computação - UFMT // Especialista em Desenvolvimento Java - CEFET/MT // Doutorando em Ciência da Computação - IME-USP
SCJP 6.0 - 19/12/2007 - PASS - 88% // SCWCD 5 - 17/05/2008 - PASS - 79% // SCJA - 09/09/2008 - PASS - 96% // SCSNI - 30/06/2009 - PASS - 68% // SCBCD 5 - 31/05/2010 - PASS - 95%
Próximos: SCJD (encalhado com o projeto), SCEA parte I (estudando). Algum dia desses: SCMAD, OCA, SCEA e SCDJWS.
Computação: uma ciência holística e esotérica!
E então veio Deus a terra e disse aos homens: Não dividireis por zero.
XML is a giant step in no direction at all. (Erik Naggum)
Arquitetura de sistemas: Eu prefiro ser essa metamorfose ambulante do que ter aquela velha opinião formada sobre tudo.
Diga não as drogas: Não use java.util.Vector.
Cuidado: Este usuário pode ter temperamento agressivo.
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live.
I am the maniac serial killer that knows where you live who will maintain your code.
É impossível falar de CMMI (Capability Maturity Model Integration) sem saber o que é CIMM (Capability Im-Maturity Model).
Se você escreve "concerteza", "concerteza" você andou matando aulas de português. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2008 14:51:33
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
maior_abandonado wrote:
eduveks wrote:
DaviPiala wrote:API de datas é uma desgraça!
Eu fico revoltado com alguns nomes de metodos principalmente na api de servlets tipo parametros init do contexto.
Falando em Servlets... doGet, doPost... são horriveis, pior impossível!
kra eu so meio iniciante, desculpe minha ignorancia mais...pq???
ué... pra q tu vai querer dois métodos diferentes de inicialização para o Get e para o Post!?
veja como o netbeans resolve esta inutilidade:
Se com o request.getMethod() vc pode saber se é POST ou GET... então bastava um método e ai caso precisase de diferenciar o get do post é só fazer um if com o valor do request.getMethod()...
Ou seja... doGet e doPost além de não fazer sentido, sujam o código, um tapinha na orelha do cara q inventou isto!
Acho q só em Java q inventaram este conceito de GET e POST separados, como se fosse coisas independentes...
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
|
|