EVGD: Códigos Toscos

[quote=André Fonseca]String yes_no = rs.getString("foo"); if (yes_no != null) { if ( yes_no.equals("Y") || yes_no.equals("YES") || yes_no.equals("Yes") || yes_no.equals("y") || yes_no.equals("yes") ) ret = true; } [/quote]

Só faltou comparar caso seja não :lol:

[risos]

[quote=André Fonseca]String yes_no = rs.getString("foo"); if (yes_no != null) { if ( yes_no.equals("Y") || yes_no.equals("YES") || yes_no.equals("Yes") || yes_no.equals("y") || yes_no.equals("yes") ) ret = true; } [/quote]

Alguem avisa para cidadao que existe equalsIgnoreCase() :slight_smile: :slight_smile:

Ele esqueceu de testar todas as possíveis:

yes
Yes
yEs
yeS
YES
YEs
YeS
yES

haaahhahaha

Adoro a criatividade na hora de dar nomes.

DAOConsultaConsultaAplicacao

É o pattern Pleonasmo Vicioso.

Eu já vi:
DaoConsultaDaoConsulta

Ja vi um método que se chamava.

boolean podeConsultar(String sql)

Nesse método verificava se havia algum dado que pude-se ser resgatado e retornava um boolean.

Eu ein…

Já levei bronca de “senior” (o kra tinha 4 anos na empresa e só trabalhou la, e com um framework proprio td feito com JavaSE, Swing) pq eu usei operador ternário em uma condicao simples como no exemplo:

<condicaoQueNaoLembro> ? true : false;

ao invez de:

if(<condicaoQueNaoLembro>) {
  return true;
} else {
  return false;
}

A justificativa dele nem foi por questão de legibilidade e sim de performance hahahaha ele dizia que operador ternario leva o dobro do tempo de um if normal… so se for o dobro do tempo pra ele (programador) entender o que está sendo feito

[quote=andrerios]Já levei bronca de “senior” (o kra tinha 4 anos na empresa e só trabalhou la, e com um framework proprio td feito com JavaSE, Swing) pq eu usei operador ternário em uma condicao simples como no exemplo:

<condicaoQueNaoLembro> ? true : false;

ao invez de:

if(<condicaoQueNaoLembro>) {
  return true;
} else {
  return false;
}

A justificativa dele nem foi por questão de legibilidade e sim de performance hahahaha ele dizia que operador ternario leva o dobro do tempo de um if normal… so se for o dobro do tempo pra ele (programador) entender o que está sendo feito[/quote]

de todo o jeito, acho que o melhor era fazer

return condicaoQueNaoLembro

Você podia agrada-lo:

[code]List condicoes = new ArrayList();
condicoes.add(true);
condicoes.add(false);

int index = condicaoQueNaoLembro ? (18720 % 10) : (192812701 % 100);
return condicoes.get(index);[/code]

[quote=dm_thiago][quote=andrerios]Já levei bronca de “senior” (o kra tinha 4 anos na empresa e só trabalhou la, e com um framework proprio td feito com JavaSE, Swing) pq eu usei operador ternário em uma condicao simples como no exemplo:

<condicaoQueNaoLembro> ? true : false;

ao invez de:

if(<condicaoQueNaoLembro>) {
  return true;
} else {
  return false;
}

A justificativa dele nem foi por questão de legibilidade e sim de performance hahahaha ele dizia que operador ternario leva o dobro do tempo de um if normal… so se for o dobro do tempo pra ele (programador) entender o que está sendo feito[/quote]

de todo o jeito, acho que o melhor era fazer

return condicaoQueNaoLembro

[/quote]

Nao retornava true/false direto senao com certeza usaria essa ideia… foi so um exemplo :wink:

condicaoQueNaoLembro ? fazAlgoSeTrue() : fazAlgoSeFalse();

[quote=ViniGodoy]Você podia agrada-lo:

[code]List condicoes = new ArrayList();
condicoes.add(true);
condicoes.add(false);

int index = condicaoQueNaoLembro ? (18720 % 10) : (192812701 % 100);
return condicoes.get(index);[/code][/quote]

Ai de duas uma, ou ele se demitia ou se matava hahahaha

imagina isso entao:

public boolean continuaValidacao(){
   boolean continuaValidando = true;
   List<Usuario> usuarios = DAO.getAllUsuarios();
   for (Usuario user : usuarios){
      continuaValidando = (user != null ? true : false);
   }
   return continuaValidando;
}

HAHA

[quote=ViniGodoy]Você podia agrada-lo:

[code]List condicoes = new ArrayList();
condicoes.add(true);
condicoes.add(false);

int index = condicaoQueNaoLembro ? (18720 % 10) : (192812701 % 100);
return condicoes.get(index);[/code][/quote]

Demorei pra entender que só o que importava é o 18720 e 192812701.
Levei um susto quando vi.
Pensei que fosse outro jogo binario que nem um que voce postou uma vez para pegar os maiores numeros.

[quote=JonathanSSantos]imagina isso entao:

public boolean continuaValidacao(){
   boolean continuaValidando = true;
   List<Usuario> usuarios = DAO.getAllUsuarios();
   for (Usuario user : usuarios){
      continuaValidando = (user != null ? true : false);
   }
   return continuaValidando;
}

HAHA[/quote]

kkk, não acredito que alguem possa implementar algo assim…

Esqueceu de pedir a alternativa: Qual a pior?
código inútil? operador ternário inútil? falta de um teste para parar o for?

já vi varias “coisas” do tipo:

if (sql == null) {
       executa(sql);
} else {
       executa(sql);
       executaOutro(cliente);
}

Enquanto isso, no código da infraestrutura:

[code]this.persistenceAlias = persistenceAlias(); //MALWARE
// this.persistenceAlias = “alias”;

// MALWARE temporario - INICIO
protected static String persistenceAlias() {
// … código louco aqui
}
// MALWARE temporario - FIM
[/code]

e, logo após o susto:

// result: [i][0] holds key for entry on SELECT control, // [i][1] holds value, // [i][2] indicates whether the entry is selected Object[][] result = null;

O legal é que disseram que na época da construção do sistema (2001) não existiam design patterns.

De repente o Java também não era orientado a objetos naquela época…

Esse pessoal POGueiro deveria usar estas camisas: http://www.cafepress.com/codergear/5033878

[quote=danieldestro]Esse pessoal POGueiro deveria usar estas camisas: http://www.cafepress.com/codergear/5033878
[/quote]

WTF!?

Será que eles fazem desconto ?!

[quote=A.L][quote=danieldestro]Esse pessoal POGueiro deveria usar estas camisas: http://www.cafepress.com/codergear/5033878
[/quote]

WTF!?

Será que eles fazem desconto ?![/quote]

eu vi umas camisas mto maneiras na parte q nao e informatica huahuauhahua

“I’m not a ginecologist… but i’ll take a look at it” hauuhauhahua

public Boolean existeSemAprovador(Long codigo) throws Exception {
     try {
          ...
          return (Integer) query.uniqueResult() == 1 ? Boolean.TRUE : Boolean.FALSE;

     } catch (Exception e) {
          ...
     }
          ...
     }

E o colega ainda teimou dizendo que era obrigatório o operador ternário. :? Sendo que bastaria apenas um return (Integer) query.uniqueResult() == 1;