8 de jun. de 2009

POG, POR

Já ouviram falar nisso, POG e POR ?

São métodos de programação assim como POO (Programação Orientado à Objetos), mas com um paradigma diferente.

POR, nada mais é que, Programação Orientada à Resultados.

Exemplo de POR:

   1: value = this.CheckNullValue(value);
   2: if (value == null)
   3:     return false;
   4: //Checking for isnull
   5: if (Values==null && value==null)
   6: {
   7:     return false;
   8: }

O exemplo acima, encontrado no coditiano de alguns programadores, faz com que o valor retornado da função (qualquer que ela seja) retorne o valor de FALSE, até mesmo quando a VM tenta passar batido pela primeira condição, evitando a fadiga do processador.

POG, um outro conceito, Programação Orientada à Gambiarras.

Exemplo de POG:

   1: String[] values = stringComVirgulas.Replace(',' , ';').Split(';');

O exemplo acim, também encontrado no conturbado e cruel cotidiano programático!, altera todos os valores igual a “,” para “;”, esse processo é simples, mesmo usando uma plataforma de programação sofisticada para a nossa época, o conceito é o mesmo, ler do ponto A (inicio da string) até o ponto B (fim da String) e fazendo comparação de carácter a carácter. Após esse processo dolorosa para a CPU, é feita a “explosão” da string em várias outras strings usando o carácter “;” como delimitador. Esse outro processo funciona da seguinte forma, parecida com a anterior… é feita a leitura do Ponto A ao Ponto B, verificando carácter por carácter até achar o delimitador, assim repassando para uma outra variável esse espaço de string. Uma dica importante, o Método Split… como podemos ver… recebe um parâmetro, esse nada mais é que um erro do criador, já que o Split apenas funciona com Strings com “;”

 

Esperem por mais… eu que espero que não!

4 comentários:

  1. Se vc não sabe fazer nada... venha programar com a gente!!!!
    AE curvona de rio que é essa nossa área de trabalho...

    xD

    ResponderExcluir
  2. String[] values = stringComVirgulas.Replace(',' , ';').Split(';');

    Fala garoto. O que entendi do código é que podm existir situacoes onde o usuario tenha informado ',' ao invés de ';'. Para evitar erros "bobos" do tipo: Use ';' ao invés de ',' o programador faz o replace do ',' por ';' para entao chamar o0 split que irá quebrar a string em um array com base no separador ';'
    O que tem de errado?

    ResponderExcluir
  3. Fala Pedroca!
    Dava pra passar os dois parâmetros direto pro Split né...
    String[] values = stringComVirgulas.Split(',', ';');

    ResponderExcluir