[disclaimer]
Os códigos desse post estão no Gist do Github, se não aparece no seu leitor de Feeds vai ter que entrar no site ou ir direto para o github
[/disclaimer]
Javascript possui funções como tipos de primeira classe na linguagem e implementa vários conceitos de programação funcional, mas essa forma de programar sempre é relegada quando escrevemos código com ExtJS.
Observe no código abaixo um trecho usando ExtJS para expandir as linhas de uma Grid:
Código imperativo comum encontrado nos projetos com ExtJS, o mesmo código conhecendo um pouco a API pode ser feito como se vê abaixo:
Você percebe que utilizando uma abordagem só um pouco mais funcional (como passar função como argumento de outra função) nem sempre vai ter menos código e pode até ser bem maior, mas observando a API com mais atenção você detecta que o método toggleRow pode receber tanto um index quanto o próprio Model, então você abusa mais um pouquinho e passa a própria função como argumento do método each (como podemos ver abaixo).
Comparando os dois códigos você pode até reclamar que a sintaxe imperativa vai ser mais fácil de ler, aà será questão de conhecimento em programação e experiência com essas outras abordagens, reconheço que programação funcional não é comum principalmente para quem programa com ExtJS no cotidiano.
Apesar de tudo vale a pena se esforçar um pouco e começar a escrever um código mais funcional.
Categories: Ext, Programação funcional ~ ~ Trackback
January 15th, 2013 at 12:06 pm
[...] a falar sobre programação funcional com o Framework ExtJS, vou avançar sobre a API que fornece funções úteis para trabalhar sob esse paradigma e quando a [...]