Atualmente existem muitas linguagens de programação no mercado, algumas que fazem parte do "legado" {cobol,natura...} e outras estão em "voga" {java,ruby,c#...}. Fala-se muito em expressividade na escrita de código. A linguagem pode ajudar e muito a criação de código mais expressivo. Como exemplo inicial, duas linguagens, Java já conhecida e admirada e Ruby nova e promissora.
Para se obter o ultimo elemento de uma lista...
Em Java.
aList.get(aList.size -1)
Em Ruby.
anArray.last
É notório que o código parece ser melhor expresso com Ruby.
Agora considere os códigos abaixo:
//C# 2.0
date d = Helper.At(Helper.FromToday(Helper.Days(2)), Helper.Pm(4));
//C# 3.0
date d = 2.Days().FromToday().At(4.Pm);
Veja o quanto a versão 3.0 do sharp é mais fácil de ser "lida".
Outro exemplo:
Em Java:
public List pessoasFisicas(List pessoas) {
List resultado = new ArrayList();
for (Pessoa pessoa : pessoas)
if (pessoa.isFisica()) result.Add(pessoa);
return result;
}
Em Ruby:
def pessoasFisicas(pessoas)
return pessoas.select {|e| e.isFisica}
end
Sem comentário para essa última demonstração.
"Ser expressivo" pode facilitar futuras manutenções, extensões e integrações no código.
Os exemplos foram roubados discaradamente de
* HumaneInterface - Martin Fowler
* Artigo no InfoQ
ps: os códigos podem estar errados.
2 comentários:
Genial dispatch and this fill someone in on helped me alot in my college assignement. Thank you seeking your information.
Por nada! Não compreendi corretamente o que quis dizer mas tudo bem!
You welcome! Well, even that I don't undestood all you wrote...
Postar um comentário