No desenvolvimento moderno é impossível evitar o uso de uma framework. Nenhuma equipa consegue ser produtiva sem um código base reutilizável, e manter uma framework personalizada pode tornar-se num trabalho a tempo inteiro.

É por esta razão que existem frameworks e CSSs: não só reduzem o tempo do projeto em semanas ou mesmo meses, como também eliminam erros e proporcionam mais funcionalidades out of the box.

Por muito que tal seja verdade, começar uma framework do início pode ser um desafio assustador, principalmente se a framework não for a mais indicada para si e para a sua equipa. Ter toda a base de um projeto construída por outra pessoa é o pior pesadelo de um developer, já que não só as funções base estão previamente definidas, mas também cada framework irá adicionar um conjunto de regras que terão de ser seguidas, de modo a fazer com que o código funcione.

No entanto, começar uma nova framework também pode ser uma das melhores experiências profissionais que um developer pode ter. O código base de todas as principais frameworks é suficientemente antigo e polido para lhe permitir fazer aquilo que quiser com o mesmo e, para a maioria das frameworks, é possível fazer expansões através de plugins, módulos ou pacotes já testados e desenvolvidos por centenas de developers e utilizadores.

O verdadeiro desafio é passar do assustador e frustrante para o produtivo e personalizável. O segredo (não tão secreto) não tem a ver com a framework usada, mas com o estado de espírito com que se aborda a nova experiência.

Mantenha uma mente aberta

Se está a começar a sua primeira framework, provavelmente vem de programação em php puro, um código de includes, funções globais, mysql_query e phpmyadmin. Contudo, por mais notável que seja fazer todas as linhas do seu projeto (e depois reutilizar código ao copiar e colar de projetos antigos), também pode levar mais facilmente a erros e atrasos. Muitos atrasos!

O primeiro passo para lidar com uma framework não é abrir o seu editor de código, mas sim perceber a personalidade da framework. Perceber como é que a mesma lida com a informação, como deve ser expandida e como outros developers trabalham com ela. Mas principalmente, como é que pretende integrar (e evoluir) os seus hábitos de programação para a estrutura da framework em questão.

Laravel

Laravel é a principal framework da Diamond. Tem muitas funcionalidades para oferecer, mas a minha favorita não está escrita no código.

Laracasts é a ferramenta mais fantástica que qualquer framework já criou e depois de algumas horas a ver vídeos no telemóvel, não só fica a conhecer tudo aquilo que o Laravel tem disponível mas também o processo e a linha de pensamento adotados pelos developers. Por outras palavras, o mindset da framework.

Laracasts é uma ferramenta tão importante que recomendamos que todos os nossos novos developers tirem algum tempo para ver os vídeos, já que fazê-lo, não só ajuda a perceber o mindset da framework, como também os standards de programação da equipa.

WordPress

O WordPress é tão diferente que parece uma linguagem de código à parte e é por essa razão que não podia faltar nesta lista.

O Wp tem uma abordagem tão diferente que não se consegue chegar a lado nenhum sem um mindset de php puro, e funciona através de actions, filters e plugins. Após a instalação, deve-se encontrar o melhor plugin para a tarefa em questão e o hook certo para o adaptar às suas necessidades.

Usar o wordpress phpmyadmin torna-se secundário, já que nunca irá conseguir correr um ficheiro contacts.php e os elementos do seu website nunca poderão ser copy-paste de snippets de código. O desenvolvimento de widgets e shortcodes deve fazer parte do seu fluxo de trabalho normal e a capacidade de, posteriormente, aplicar este código em múltiplos projetos irá melhorar os seus trabalhos futuros.

É por isto que, quando se utiliza wordpress, o mindset tem um impacto tão grande: para que não se perca um dia inteiro à procura de uma área na base de dados ou de uma variável num plugin externo quando a abordagem correta é uma action e 10 linhas de código.

Espero que este artigo vos tenha deixado prontos para um novo desafio! 🙂