| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2008 09:49:56
|
Rafael Afonso
Virtual Machine Man
Membro desde: 05/12/2002 16:03:43
Mensagens: 719
Localização: São Paulo/SP
Offline
|
Este fui eu quem fez, de ontem para hoje e foi bem sutil: Tinha um array de chars com um número par como tamanho. Tinha que percorrê-lo 2 a 2. O for que eu fiz foi o seguinte:
O problema é que para arrays longos dava loop infinito e daí dava pau no programa. Só depois de olhar melhor o código é que percebi que ao fazer i =+ 2 na verdade eu estava atribuindo sempre o valor +2 a i. Na verdade o correto seria i += 2. Creio que estou tão acostumado a usar i ++ para percorre arrays que esqueci deste detalhe.
This message was edited 1 time. Last update was at 12/11/2008 09:52:20
|
Rafael Ubiratam Clemente Afonso
---------------------------------------
GitHub
ScalaFX
LinkedIn |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 12/11/2008 15:13:51
|
Jeanioz
JavaChild
![[Avatar]](/images/avatar/97ef7f4a6f519343cfcc3c26a3639178.png)
Membro desde: 28/08/2006 15:04:48
Mensagens: 147
Offline
|
kicolobo wrote:Esta é outra clássica que já vi.
Em um sistema que estavamos desenvolvendo, uma programadora resolveu criar a interface gráfica de uma parte do sistema que, dependendo da ação do usuário, poderia ter consequências desastrosas, pois milhares de registros poderiam ser alterados (no caso, dizia respeito à exclusão de bancos de dados).
Pois bem: a programadora terminou o trabalho, veio toda contente para nós e, juntos, fomos apresentar o resultado para o cliente. O estado de confiança da "profissional" alastrou-se entre nós. Naquele momento, possuíamos CERTEZA de que tudo daria certo (claro, nem sequer haviamos olhado o resultado do trabalho, pois o tempo era nulo).
Então, estamos na frente do cliente, e segue o seguinte diálogo.
_ A ferramenta de exclusão de registros está pronta?
_ Sim, e ficou ótima. A performance ficou excelente.
(haviamos visto os testes unitários desta parte e, realmente, ela tinha razão. A performance era perfeita. E o código, era realmente muito bacana, mas voltemos ao diálogo)
_ Gostaria de ver como isto está no sistema.
_ Ok, vou lhe mostrar. Aqui está o botão. Clique nele para ver o que acontece.
(nossos corações pararam por um segundo ao ver o que surgiu na tela. Nós naquele momento só haviamos visto a camada de negócio. Não a interface gráfica que ela havia desenvolvida (mea culpa, mea culpa, mea culpa!))
Eis que surge na tela uma caixa de diálogo com o seguinte texto:
"Você está prestes a apagar todos os registros do projeto X. Deseja continuar?"
E um único botão: "Ok."
Ah, isso é fácil de corrigir na frente do cliente:
- É só clicar no xizinho...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 15:19:40
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
Colaboração de um amigo:
Só faltou o
hahahahaha
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 15:33:34
|
Bruno Laturner
GUJ Expert
![[Avatar]](/images/avatar/5800ccd9514fd789d08e5831951aa6bc.jpg)
Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline
|
danieldestro wrote:Colaboração de um amigo:
Só faltou o
hahahahaha
Qual o problema? Há mais checagens abaixo? O código inteiro é só este if?
|
A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 15:39:59
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
Nenhum problema, mas olha que mais simples:
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 15:57:01
|
Bruno Laturner
GUJ Expert
![[Avatar]](/images/avatar/5800ccd9514fd789d08e5831951aa6bc.jpg)
Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline
|
danieldestro wrote:Nenhum problema, mas olha que mais simples:
Por isso que perguntem se haviam mais checagens.
Se a pessoa quisesse colocar um alert lá para debugar, ou se quisesse implementar mais validações no futuro, aquele código estaria ótimo.
|
A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 15:57:59
|
jcmird
JavaGuru
![[Avatar]](/images/avatar/be7c20a83fb93c62352414aa58e525c2.jpg)
Membro desde: 21/08/2007 01:43:38
Mensagens: 244
Offline
|
100% Pog ahauhaua... tem programdor que gosta de ver o código bem grande .. Este vai ser um post eterno no guj ahauah.
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 16:05:37
|
jingle
Virtual Machine Man
Membro desde: 04/10/2006 20:40:08
Mensagens: 642
Localização: Canoas/RS
Offline
|
danieldestro wrote:Nenhum problema, mas olha que mais simples:
desta sua forma... ele retornaria true caso o validateCodPessoa retorna true.... e como você mostrou no código dele não tem o "else return true".. dava pra mudar pra algo assim
This message was edited 1 time. Last update was at 03/03/2009 16:06:25
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 16:19:00
|
Pedrosa
JWizard
![[Avatar]](/images/avatar/2b763288faedb7707c0748abe015ab6c.jpg)
Membro desde: 13/07/2005 13:08:08
Mensagens: 2505
Localização: São Paulo - Brasil
Offline
|
E essa gambiarra para pegar o codigo e incrementar + 1:
Depois o cidadao coloca sequencial + 1 e da um monte de pau, olha que ta em Hibernate, usem sequence pelo amor de Deus.
Refatorado.
This message was edited 4 times. Last update was at 15/04/2009 12:32:20
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/03/2009 16:43:02
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Rafael Afonso wrote:Só depois de olhar melhor o código é que percebi que ao fazer i =+ 2 na verdade eu estava atribuindo sempre o valor +2 a i.
Em alguma ocasião de sua vida você já usou C? No tempo do Kernighan & Ritchie era possível usar:
i += 2;
ou
i =+ 2;
É desnecessário dizer que isso era um pouco ambíguo, e não conheço nenhum compilador (mesmo o MS C 3.0) que implemente a segunda forma, que está obsoleta há muitos anos.
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 15:23:30
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
Lindo:
This message was edited 1 time. Last update was at 04/03/2009 15:23:56
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 19:57:55
|
marcobiscaro2112
JWizard
Membro desde: 01/12/2008 11:56:04
Mensagens: 2408
Localização: São Paulo - SP
Offline
|
danieldestro wrote:Lindo:
Esse é um dos mais feios (é só pensar um pouco, caramba!!) e, mesmo assim, dos mais comuns. E erros não faltam: mais de 40 páginas e, com certeza, tem muito mais...
|
Marco Biscaro.
Seja livre!
Você sabia que provavelmente há milhares de arquivos duplicados no seu computador?
Ei... você está usando DefaultTableModel no seu projeto?? Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/03/2009 08:26:02
|
Bruno Laturner
GUJ Expert
![[Avatar]](/images/avatar/5800ccd9514fd789d08e5831951aa6bc.jpg)
Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline
|
danieldestro wrote:Lindo:
Esse me lembra uns mais comuns, principalmente com jstl em jsps:
São do tipo
E lá vai o servidor executando laços sem necessidade....
|
A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/03/2009 08:43:07
|
gui_sv
JavaEvangelist
![[Avatar]](/images/avatar/0383314bf626052313b8275638fcccce.jpg)
Membro desde: 26/05/2006 10:05:28
Mensagens: 391
Localização: SCS
Offline
|
auhauhauhauhauha
Este virou um bom topico de POG
Programacao Orientada a Gambiarra ..
huauhauhauhahu
sempre que fizer um codigo...vou consultar aqui para ver se tem como melhorar .. ahuuahuhauha
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/03/2009 10:20:17
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
Hard way:
Introduzindo o conceito de ARRAY para o progamador desavisado:
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
|
|