EVGD: Códigos Toscos

Balanceamento perfeito de tags HTML:

<table>
  <tr>
	<td align="left"><input type="hidden" name="codDistribuidor" value="$!distribuidor.codDistribuidor"></td> 
        	</td>
     	</tr>
	         <td width="30%" align="right" class="style01">Status:</td>
	</table>

So pra garantir que não é nulo:


 Object o = new Object();
 if (o != null) {
   //mais codigo aqui...
 }

null == “”


String str = null;

if (!str.equals("") && str != null) { //olha o nullpointer no capricho!!!
  // mais codigo aqui
}

[quote=luistiagos]So pra garantir que não é nulo:

Object o = new Object(); if (o != null) { //mais codigo aqui... }[/quote]

Faria sentido se existisse GOTO em java para a linha imediatamente abaixo do new Object();

Isso me lembra outras linguagens de programação… durante a madrugada… com prazo acabando…

[quote=victorwss]Olha só o que eu achei, o troço está em produção:

[code]
/**

  • @author

*/
public class Xxx extends Thread {
}[/code][/quote]

Bem, faz sentido.

Provavelmente estão tentando proteger o autor do serial-killer maníaco que está manutenindo do código.

Olha quer já peguei isso em um sistema de Banco…

public boolean validate(PersonDataBean bean) {
        boolean valid = false;
        if (validateData(bean)) {
            valid = true;
        }
        if (validateCupons(bean)) {
            valid = true;
        }
        if (validateAccountInfo(bean)) {
            valid = true;
        }
        return valid;
    }

Se o cara passar na ultima validação, está tudo certo…pode passar!!! :lol:

[quote=Bruno Laturner][quote=victorwss]Olha só o que eu achei, o troço está em produção:

[code]
/**

  • @author

*/
public class Xxx extends Thread {
}[/code][/quote]

Bem, faz sentido.

Provavelmente estão tentando proteger o autor do serial-killer maníaco que está manutenindo do código.[/quote]

Não, você não entendeu. Eu editei o nome do autor para não revelar a identidade do indivíduo (ele não ia gostar nada de ter o nome dele publicado aqui).

[quote=TangZero]Olha quer já peguei isso em um sistema de Banco…

    public boolean validate(PersonDataBean bean) {
        boolean valid = false;
        if (validateData(bean)) {
            valid = true;
        }
        if (validateCupons(bean)) {
            valid = true;
        }
        if (validateAccountInfo(bean)) {
            valid = true;
        }
        return valid;
    }

Se o cara passar na ultima validação, está tudo certo…pode passar!!! :lol: [/quote]

Nem para o cara fazer isso…

    public boolean validate(PersonDataBean bean) {
        return validateData(bean) && validateCupons(bean) && validateAccountInfo(bean);
    }

:-o

Vc tá querendo dizer que o nome da classe é de fato Xxxx? :shock:

Vc tá querendo dizer que o nome da classe é de fato Xxxx? :shock: [/quote]

Dahhhhhhhhhhh…
Até eu que peguei o bonde andando tinha sacado isso…
A merda do código esta no nome da classe.
Esse tipo de cara eu chamo de Homem-Ofuscador.

Vc tá querendo dizer que o nome da classe é de fato Xxxx? :shock: [/quote]

Sim, o nome da classe é de fato Xxx. A única coisa que eu mudei foi o nome do autor, o resto é Ctrl-C Ctrl-V purinho do original!

Vc tá querendo dizer que o nome da classe é de fato Xxxx? :shock: [/quote]

Dahhhhhhhhhhh…
Até eu que peguei o bonde andando tinha sacado isso…
A merda do código esta no nome da classe.
Esse tipo de cara eu chamo de Homem-Ofuscador.[/quote]

Não só nome da classe, mas no fato de ter um monte de construtores inúteis, não fazer absolutamente nada além do que faz a superclasse, e ter a excelente documentação que alguma IDE deve ter vomitado automaticamente e ficou lá.

[quote=Bruno Laturner]Bem, faz sentido.

Provavelmente estão tentando proteger o autor do serial-killer maníaco que está manutenindo do código.[/quote]

Se bem que ainda tenho que descobrir onde o cara mora, mas já tenho algumas pistas. :twisted: MWHAHAHAHAHAH

Quando achar, corta os dedos fora!

[quote=TangZero ] Dahhhhhhhhhhh…
Até eu que peguei o bonde andando tinha sacado isso…
A merda do código esta no nome da classe.
Esse tipo de cara eu chamo de Homem-Ofuscador.[/quote]

KKKKKKKKKKKKKKKKKKK!

É que não dá para A C R E D I T A R! :shock: :shock: :shock: :shock:

Os códigos desse cara devem ser parecidos com isso…

public class X {

	public XX x(XXX xxx) {
		return xx(xxx.xxxx(xxx(xxx.xx())));
	}
	
	public XXX xxx(XX xx) {
		return xx.xxx()));
	}
	
	public X xx(XXX xx) {
		return xx.x() ? XXX.X : XX.XX;
	}	

}

Uma vez eu tinha resolvido uma lição de casa de alguém aqui, mas para sacanear eu pus em notação Unicode - o programa compila normalmente. Dica: ponha este programa em um arquivo .java, compile-o, e ttente rodá-lo. (Dica muito importante: para saber qual é o nome da classe definida por este programa, veja qual é o nome do arquivo .class gerado)

\u0069\u006D\u0070\u006F\u0072\u0074 \u006A\u0061\u0076\u0061\u002E\u0075\u0074\u0069\u006C\u002E\u002A\u003B
\u0063\u006C\u0061\u0073\u0073 \u0045\u0078\u0065\u0072\u0063\u0069\u0063\u0069\u006F \u007B
\u0009\u0070\u0075\u0062\u006C\u0069\u0063 \u0073\u0074\u0061\u0074\u0069\u0063 \u0076\u006F\u0069\u0064 \u006D\u0061\u0069\u006E\u0028\u0053\u0074\u0072\u0069\u006E\u0067\u005B\u005D \u0061\u0072\u0067\u0073\u0029 \u007B
\u0009\u0009\u0053\u0063\u0061\u006E\u006E\u0065\u0072 \u0073\u0063\u0061\u006E \u003D \u006E\u0065\u0077 \u0053\u0063\u0061\u006E\u006E\u0065\u0072 \u0028\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u0069\u006E\u0029\u003B
\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074 \u0028\u0022\u004E\u006F\u006D\u0065 \u0064\u0061 \u0070\u0072\u0069\u006D\u0065\u0069\u0072\u0061 \u0070\u0065\u0073\u0073\u006F\u0061\u003A \u0022\u0029\u003B
\u0009\u0009\u0053\u0074\u0072\u0069\u006E\u0067 \u006E\u006F\u006D\u0065\u0031 \u003D \u0073\u0063\u0061\u006E\u002E\u006E\u0065\u0078\u0074\u004C\u0069\u006E\u0065\u0028\u0029\u003B
\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074 \u0028\u0022\u0050\u0065\u0073\u006F \u0065\u006D \u006B\u0067\u003A \u0022\u0029\u003B
\u0009\u0009\u0069\u006E\u0074 \u0070\u0065\u0073\u006F\u0031 \u003D \u0073\u0063\u0061\u006E\u002E\u006E\u0065\u0078\u0074\u0049\u006E\u0074\u0028\u0029\u003B \u0073\u0063\u0061\u006E\u002E\u006E\u0065\u0078\u0074\u004C\u0069\u006E\u0065\u0028\u0029\u003B
\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074 \u0028\u0022\u004E\u006F\u006D\u0065 \u0064\u0061 \u0073\u0065\u0067\u0075\u006E\u0064\u0061 \u0070\u0065\u0073\u0073\u006F\u0061\u003A \u0022\u0029\u003B
\u0009\u0009\u0053\u0074\u0072\u0069\u006E\u0067 \u006E\u006F\u006D\u0065\u0032 \u003D \u0073\u0063\u0061\u006E\u002E\u006E\u0065\u0078\u0074\u004C\u0069\u006E\u0065\u0028\u0029\u003B
\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074 \u0028\u0022\u0050\u0065\u0073\u006F \u0065\u006D \u006B\u0067\u003A \u0022\u0029\u003B
\u0009\u0009\u0069\u006E\u0074 \u0070\u0065\u0073\u006F\u0032 \u003D \u0073\u0063\u0061\u006E\u002E\u006E\u0065\u0078\u0074\u0049\u006E\u0074\u0028\u0029\u003B \u0073\u0063\u0061\u006E\u002E\u006E\u0065\u0078\u0074\u004C\u0069\u006E\u0065\u0028\u0029\u003B
\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074\u006C\u006E \u0028\u0022\u004F \u0069\u006E\u0064\u0069\u0076\u0069\u0064\u0075\u006F \u006D\u0061\u0069\u0073 \u0070\u0065\u0073\u0061\u0064\u006F \u0065\u0068\u003A \u0022\u0029\u003B
\u0009\u0009\u0069\u0066 \u0028\u0070\u0065\u0073\u006F\u0031 \u003E \u0070\u0065\u0073\u006F\u0032\u0029 \u007B
\u0009\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074\u0066 \u0028\u0022\u0025\u0073\u002C \u0063\u006F\u006D \u0025\u0064 \u006B\u0067\u0025\u006E\u0022\u002C \u006E\u006F\u006D\u0065\u0031\u002C \u0070\u0065\u0073\u006F\u0031\u0029\u003B
\u0009\u0009\u007D \u0065\u006C\u0073\u0065 \u0069\u0066 \u0028\u0070\u0065\u0073\u006F\u0031 \u003C \u0070\u0065\u0073\u006F\u0032\u0029 \u007B
\u0009\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074\u0066 \u0028\u0022\u0025\u0073\u002C \u0063\u006F\u006D \u0025\u0064 \u006B\u0067\u0025\u006E\u0022\u002C \u006E\u006F\u006D\u0065\u0032\u002C \u0070\u0065\u0073\u006F\u0032\u0029\u003B
\u0009\u0009\u007D \u0065\u006C\u0073\u0065 \u007B
\u0009\u0009\u0009\u0053\u0079\u0073\u0074\u0065\u006D\u002E\u006F\u0075\u0074\u002E\u0070\u0072\u0069\u006E\u0074\u0066 \u0028\u0022\u0025\u0073 \u0065 \u0025\u0073 \u0074\u0065\u006D \u006F \u006D\u0065\u0073\u006D\u006F \u0070\u0065\u0073\u006F \u002D \u0025\u0064 \u006B\u0067\u0025\u006E\u0022\u002C \u006E\u006F\u006D\u0065\u0031\u002C \u006E\u006F\u006D\u0065\u0032\u002C \u0070\u0065\u0073\u006F\u0031\u0029\u003B
\u0009\u0009\u007D
\u0009\u007D
\u007D

:lol:

O que você usou para gerar o Unicode?

Olha a paranóia…

if (x == 2) { codigo aqui } else if (x == 2) { //É melhor ter certeza mesmo codigo aqui }

O pior, aquele comentário sobre ter certeza estava no código. :stuck_out_tongue:

[quote=ViniGodoy]Olha a paranóia…

if (x == 2) { codigo aqui } else if (x == 2) { //É melhor ter certeza mesmo codigo aqui }

O pior, aquele comentário sobre ter certeza estava no código. :P[/quote]

AHSIUAHSIUSAHius essa e de matar …

Isso é um desvio da “programação orientada a fé” ou POF (mais comum em gente que trabalha em ambiente Microsoft, onde ocorrem coisas inexplicáveis e você precisa ter fé na documentação da Microsoft, que é logicamente incoerente) - como ele deixou de ter fé faz pouco tempo e não achou outra religião para substituí-la, forçou a barra para que a tal coisa funcionasse.