O Efeito do Código na Mente do Programador

3 de fevereiro de 2010  |  Opinião  | 

Foto de lmw626

É interessante analisar o efeito que uma linguagem de programação tem sobre a mente do programador, principalmente a sua capacidade de influenciar a maneira como enxergamos um problema. A diferença na sintaxe e os recursos disponíveis afetam a forma como pensamos e nos comunicamos, inclusive no mundo real.

O mesmo problema pode ser solucionado de várias formas diferentes, dependendo da linguagem de programação adotada. Certamente a abordagem escolhida para resolver um problema utilizando Ruby não será a mesma se você usar Java.

Outro fator que exerce uma grande influencia sobre a forma como resolvemos os problemas e pensamos é o domínio do aplicativo. Somos tentados a utilizar o mesmo vocabulário do cliente no código. O meu conselho é tirar o máximo de vantagem desse efeito. Pode ser realmente produtivo “falar” a mesma língua que o cliente também dentro do código. Por exemplo, se o cliente explicar uma funcionalidade dessa maneira:

Quando todas as unidade de um produto se esgotarem em uma das lojas, então o sistema deve solicitar mais 10 unidades do mesmo produto para a fábrica.

Seria muito bom se o código produzido fosse algo parecido com isso:

if product.sold_out?
  Factory.order 10, product, :to => store
end

É óbvio que não esperamos que o cliente entenda o código e muito menos que ele altere algo por conta própria, mas nós programadores podemos nos beneficiar muito disso.

Não importa se você está escrevendo um código simples como o exemplo acima ou se construiu uma DSL para se aproximar ainda mais da linguagem do cliente. O importante é estreitar a comunicação entre os envolvidos. Assim o seu cérebro estará livre para se concentrar no que realmente interessa: a solução de problemas.


7 Comentários


  1. Mas como japonês lê da direita para a esquerda, vai pensar assim:

    Factory.order 10, product, :to => store if product.sold_out?

    :)

  2. O vício de pensar conforme a linguagem é realmente uma coisa chata. A mais de um ano estou full time com Ruby e mesmo assim ainda tem horas que me pego pensando PHP. =/

  3. Marcelo Silveira,

    Tenho medo só de pensar em como deve ficar o seu código…

  4. Quem vem de uma linguagem como o java, como eu, escrever uma linha de código dessa, que parece bastante com uma frase do cliente, isso é simplesmente incrível!

  5. “Oque faz um programador, não é a linguagem que usa.”
    Randal L. Schwartz

  6. Isso faz todo programador refletir, na minha humilde opinião além de usar a “lingua” do cliente a linguaguem de programação escolhida influe muito na solução e no resultado que o cliente espera.

Deixe um comentário