Posted by Leonardo Sun, 02 Sep 2007 07:40:12 GMT
A quantidade de "mágica" existente no Rails pode auxiliar em muito o desenvolvimento de sites em termos de velocidade e facilidade, mas também pode machucar feio o site em termos de performance, como mostra este post. Até que ponto o uso de "mágicas" é prejudicial ou não no desevolvimento de sites? Gostaria muito de saber a opinião de vocês sobre esse assunto.
"Mágica", para aqueles que não conhecem o termo, são partes de código que executam tarefas repetitivas ou com grande chance de erros ou ainda que facilitam a vida do usuário. Por exemplo, quando se usa o método find de um model para localizar um registro no banco de dados, o Rails gera um SQL por debaixo dos panos para encontrar o registro solicitado. Ou quando se usa o método url_for para gerar uma URL, o Rails analisa a tabela de rotas para poder gerar a URL correta.
O problema nestes exemplos é que nem sempre o SQL gerado é o mais otimizado. E para que fazer o Rails perder tempo analisando a tabela de rotas se a única coisa que se quer, na maiorias das vezes, é colocar uma url do tipo /controller/action/id?
Sei que este assunto não é restrito ao Rails, mas, no Rails, parece ser levado ao extremo e ser um pouco a causa de tantas pessoas gostarem deste framework.
