Complete a frase: "Todo programador Java ruim que eu conheco..."

[quote=flaleite]Todo programador Java ruim que eu conheco…
…trata todas as exceptions dessa forma:

try { ... ... } catch (Exception e) { e.printStackTrace(); } [/quote]

Tratar excessões é muito chato. Primeiro porque quase nunca elas são recuperáveis. E segundo que não há muito o que se fazer mesmo. O mais interessante é o registro de logs, mas é uma estratégia que depende mais do desenvolvedor senior (arquiteto) defini-la e não do jr para cada bloco de captura inventar coisas mirabolantes.

[quote=c354r]Todo programador Java ruim que eu conheco…
Critica programas alheios pelo simples fato de terem sido desenvolvidos de forma diferente do que eles fariam. [/quote]

EU critico software corporativo mal projetado porque um dia eu posso cair na manutencao dele. Pq nao? Só Deus sabe… hehehe

Até pq ja trabalhei com manutencao há muito tempo, inclusive com PHP, e sei o que é o inferno.

Lina nao seria má idéia vc informar a empresa que trabalha pro pessoal ficar esperto e ter um nivel de informacao melhor antes de tomar certas decisões …

Se tem uma exceção e nao sabe o que fazer com ela… deve se jogar pra frente…
Então, não se deve fazer isso:

try { ... ... } catch (Exception e) { e.printStackTrace(); }

E sim (na pior das hipóteses):

try {  
...  
...  
} catch (Exception e) {  
   throw new RuntimeException(e); 
}  

:wink:

[quote=wellington.nogueira]… ao inves de verificar se o objeto é nulo faz:

try { algo = objeto.getAlgo(); } catch(NullPointerException e) { objeto = new Objeto(); algo = objeto.getAlgo(); }

[/quote]

Ainda que ai fazem assim e eu q já peguei boas gamas de classes assim:

try { algo = objeto.getAlgo(); } catch(NullPointerException e) { }

Vários try fazendo funções de comparação e catchs vazios… :lol:

} else if(true) { //<-- O que é isso???!!!!   
    doCondicao3();   
} else {   
    doCondicao4(); //Será que executa? hehehehe   
}  

Não sei o NetBeans, mas o Eclipse pelo menos ia falar que aquilo é dead-code e não deixa nem compilar.

[quote=wellington.nogueira]Vi algo que me faz ressucitar este tópico…

if(condicao1()) { doCondicao1(); } else if(condicao2()) { doCondicao2(); } else if(true) { //<-- O que é isso???!!!! doCondicao3(); } else { doCondicao4(); //Será que executa? hehehehe }

Obs.: condicaoN() e doCondicaoN() são apenas simplificações, não os métodos reais :slight_smile:
[/quote]

Parece aquelas questoes “toscas” de certificação :roll:

[quote=wellington.nogueira][quote=Marky.Vasconcelos] } else if(true) { //<-- O que é isso???!!!! doCondicao3(); } else { doCondicao4(); //Será que executa? hehehehe }

Não sei o NetBeans, mas o Eclipse pelo menos ia falar que aquilo é dead-code e não deixa nem compilar.[/quote]

Essas coisas dependem de configuração mas garanto que isso foi feito no Eclipse :cry:
Dead-codes aqui só os pós-return e mais um ou outro ponto que não lembro mas esse… certamente está passando.

PS: o doCondicao3 nada fazia :([/quote]

Outro caso que me surpreendi que o eclipse acusa dead-code.

		for(int i = 0; i < 10;i++){//dead code in "i++"
			String.valueOf(i).toString();
			break;
		}

Fora varios outros que nao lembro mais.

[quote=bestlinux][quote=wellington.nogueira]Vi algo que me faz ressucitar este tópico…

if(condicao1()) { doCondicao1(); } else if(condicao2()) { doCondicao2(); } else if(true) { //<-- O que é isso???!!!! doCondicao3(); } else { doCondicao4(); //Será que executa? hehehehe }

Obs.: condicaoN() e doCondicaoN() são apenas simplificações, não os métodos reais :slight_smile:
[/quote]

Parece aquelas questoes “toscas” de certificação :roll: [/quote]

Isso me fez lembrar uma vez num sistema que estava ajudando a da manutenção…

Eu(Estagiário): Mas por que tem esse if(true)?
ProgramadorQueEstavaMuitoAntesDeMim: Ah, é que mudou a regra de negócio e não vale mais o que está no else…

E nessa época, EU que era o estagiário…

:roll:

Por incrivel que pareça eu vi uma tag que adicionava JSTL na resposta do JspWriter…

Exemplo:

out.write("<c:if test=\"tinhaUmTesteAquiComEL\">");
out.write("escreve algo");
out.write("</c:if>");

Quando vi isso comecei a rir kkk
Olhando no HTML, tava la a expressao.
O autor da classe nem teve o trabalho de testa a zica.

Escreve coisas do tipo : public static final String VINTE_E_UM = “21”;

Usa camel case e maiusculas em nomes de pacotes, classes comecando com caractere em minusculo

Escreve metodos com centenas de linhas

Deixa codigo duplicado em tudo quanto e canto

Criam classes poltergeists que nao servem para nada

Me considero um programador mediocre. Mas fico feliz em saber que nao faco estas coisas e nem algumas das que postaram neste topico.

Ja usei (temporariamente) um “if (true) return” para desabilitar um trecho de código que nao queria testar no momento, sem precisar de comentar e sem que o Eclipse reclamasse de alguma coisa.

Já que o tópico já foi desenterrado…
Já vi gente programar (não só java) com acentuação gráfica/caractéres especiais como ‘Ç’ rs

… se blinda com siglas pensando saber o que fala quando não sabe onde está o próprio nariz.

[]'s

Caramba.

Falaram sobre mim esse tempo todo e só agora foi que eu descobri esse tópico!!!

:smiley:

Excelente discussão. Não deixem isso morrer.

[]s

Todo o programador RUIM independente da linguagem possuí uma série de opiniões formadas sobre outras linguagens sem ao menos conhecê-la, portanto
o que nos traz a refletir sobre uma espécie de preconceito tecnológico, é claro que a pressa constante do mercado força cada vez mais profissionais que possuem
bons conhecimentos em orientação a objetos e programarem de maneira estruturada, academicamente falando existem muitos programadores ruins e aposto que todos
os que postaram já pecaram em alguma coisinha portanto vamos utilizar o fórum para evidenciar e sugerir maneiras de contornar estas deficiências e não ficar perdendo tempo
mostrando o que já viu ou deixou de ver,bom esta é minha opinião e irparticipar adequadamente da brincadeira:

“Todo o programador Java ruim que eu conheço um dia se tornará um grande profissional com dedicação e força de vontade…”

puxa com esse tópico vou ficar traumatizado pro resto da vida :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops:

mas e dai me conformo em querer aprender mais e mais
quem sabe um dia vou ser um programador bom segundo os parâmetros do pessoal ai de cima

fazer o que? a vida é assim mesmo bola para frente

É perito em duas teclas: ctrl-C e ctrl-V. O resto é absolutamente desnecessário…

não são 3 teclas???

Ah… e usa Object.hashCode() para implementar criptografia…

não são 3 teclas???[/quote] Ah, é verdade. A tecla ctrl ele usa para atirar… :D:D:D

Solta Balão

lol rimo