Gestão Dev & TIARTIGO

Não use jQuery! Não aprenda qualquer framework antes de…

…conhecer o mínimo da linguagem base em que esse FW foi escrito! E por isso que existem tantos desenvolvedores se enrolando… Tentam usar bibliotecas, frameworks e ajax antes de aprender o básico.

Aprender CodeIgniter, Kohana, CakePHP, Smarty…antes de aprender php é loucura! Ninguém faz curso de ZendFW sem nunca ter programado php. Primeiro se aprende php e depois vai para um FW. Então por que inverter os papeis com JavaScript?

Ok, a curva de aprendizado do jQuery (assim como dos demais fws) é menor, e se aparecer um problema?

Aí, aquele desenvolvedor que optou por começar com o framwork sem antes passar pela linguagem base começa a ter dúvidas básicas de programação. O FW não resolve tudo para ele. Só vai facilitar o trabalho se ele não se enrolar com os conceitos fundamentais.

Já vi gente pedindo plugin jQuery para descobrir o que está na url. Veja, ele não queria e nem precisava fazer um parser da querystring, só precisava saber o que estava lá. Não sabia da existência do documen.location e das diversas propriedades desse objeto.

Outro cara ainda, não queria usar o document.createElement(), ele insistia em querer fazer com jQuery! Ok, existe plugin pra isso!! Mas pra quê? O método nativo da linguagem já é tão bom! Vamos deixar para o FW, o que deve ser do FW. Ficar inchando nosso documento de plugins só vai detonar o tráfego. Usar plugins e FWs, onde não é necessário, só vai deixar nossa aplicação mais lenta!

Um outro caso: respondi a dúvida do desenvolvedor, que era super simples, usando apenas js e eram 3 ou 4 linhas de código. Ele testou, disse que funcionou e depois pediu para ver como ficaria aquilo em jQuery. Era idiota reescrever 4 linhas de js, usando o FW e nem dava! Percebi que ele pensava: “JavaScript estava ultrapassado e ele pretendia fazer da forma moderna.”

O mesmo ocorreu com AJAX: a dúvida estava resolvida, e o cara pediu para ver como ficaria em AJAX! E era tudo apenas javascript puro, não havia o menor motivo para ir no servidor e voltar. Nesse momento, começa a surgir uma confusão de papéis. Gente achando que AJAX é uma linguagem, que precisa enfiar jQuery em tudo…

Já vi tópico começar ‘sobre AJAX’ e terminar apenas com php puro! O cara queria colocar uma requisição assíncrona onde não precisava. Completa inversão de valores e pura falta de conhecimento, certo?

Sou totalmente contra os desenvolvedores que que começam a aprender linguagens server-side sem antes terem algum contato com HTML. Isso é básico! Programando web precisamos de HTML, é a linguagem padrão que vai possibilitar todo o resto. O teu php, asp, java.. vai gerar HTML mais cedo ou mais tarde.

Eis que começam a surgir dúvidas bobas. O cara vai fazer uma listagem de produtos para uma loja virtual e não sabe como colocar um produto do lado do outro. Isso é porque ele não sabe HTML, muito menos CSS! Sem entrar no mérito da divisão de trabalho, FrontEnd, BackEnd… ao menos um pouco da linguagem do outro, era bacana.

Em agências pequenas ou como freelancer, muitas vezes acontece de o mesmo profissional fazer ambos trabalhos, /(Front|Back)End/. Alguns passos são importantes e devem ser respeitados. Comece do básico, evolua, e aí sim vá para o além!

Antes de tudo, você recebe aulas de Lógica de Programação e Programação Básica, certo? Deveria ser assim, mas me assusta ver a quantidade de programadores que tem no mercado que não possuem essa base na formação.

Pra mim deveria ser assim: todo programador deveria obrigatoriamente estudar alguma linguagem de programação de baixo nível!

Alguns programadores não conhecem a diferença ou nem sabem que existe!

Não, não estou sendo arcaico. Estou sendo realista. O conhecimento adquirido ao fazer algo em Assembly por exemplo, é extraordinário. Se todos passassem por essa experiência, não teríamos tanto lixo sendo criado. Não precisa se tornar sênior, nem ser ótimo em HTML e CSS, nem defender tese de mestrado em lógica. Mas coisas como tipagem, declaração de variáveis, coletor de lixo e escopo… que faltam em vários programadores php e js que conheço. Vejo pessoas nos fóruns declarando uma function e achando que ela será executada só com isso, sem ele fazer uma chamada a ela.

Ponto importante: não ser dependente do Framework. Aprenda a fazer com ele, mas sem também!

E se a sua empresa resolver mudar de paradigma, ou você mudar de trabalho e lá usarem outros, ou nenhum? Como fica?

Você novamente vai gastar um bom tempo reaprendendo outra ferramenta que poderia ser muito menor, se tivesse alguma idéia de como essas ferramentas fazem o que fazem.

A Inversão de Controle pode ser a tua amiga. Conheço todos os “bons motivos” de se usar um FrameWork e o meu ponto é: não comece por ele, vá evoluindo e aprendendo a base!

Até a próxima!

Trabalha como Desenvolvedor FrontEnd, nos horários em que não está estudando Matemática na faculdade ou escrevendo posts para o seu blog pessoal.

Ver perfil