Meu nome é Elton Minetto

Php

Atoum: uma alternativa ao PHPUnit

Pesquisando novas ferramentas de testes e integração contínua, em especial o CircleCI, acabei encontrando um projeto interessante, o atoum. O projeto tem uma ambição grande: ser uma alternativa ao padrão do mercado, o PHPUnit.

O atoum é baseado nas novas features do PHP 5.3 e foi desenvolvido com as seguintes idéias:

  • Pode ser implementado rapidamente ;
  • Desenvolvimento simplificado de testes;
  • Permitir a criação de testes legíveis, confiáveis e claros;

Para poder comparar com o PHPUnit eu fiz um pequeno projeto de exemplo.

ABRAPHP

Eu trabalho com PHP desde 1999 e acompanhei várias mudanças nesse período de tempo. E não só em relação a própria linguagem mas também em relação ao mercado e aos desenvolvedores.

Gerenciando assets por módulos no Zend Framework 2

Obs: Esse é um post avançado sobre Zend Framework 2. Se você não está familiarizado com os novos termos e conceitos do framework eu recomendo esse screencast com a introdução ou o e-book Zend Framework 2 na prática (eu sei que é cara de pau hehe)

Uma das funcionalidades mais úteis do Zend Framework 2 é a forma como os módulos agora podem ser facilmente incluídos ou removidos de um projeto. Um módulo agora é realmente uma porção de código que pode ser reaproveitada facilmente. Nesse post vou mostrar isso usando um módulo muito útil chamado AssetManager.

Usando Vagrant para criar máquinas virtuais para desenvolvimento e testes

Recentemente trabalhei em um projeto grande, com equipes trabalhando remotamente, cada desenvolvedor usando o seu ambiente favorito para trabalhar (Linux, MacOS X e Windows) e o sistema tendo diversos requisitos (PHP, MySQL, Memcached, Solr, PHPUnit, etc). Era comum acontecerem problemas como “na minha máquina todos os testes funcionam, mas na máquina de fulano, que roda Windows não” ou “temos um novo programador na equipe, precisamos instalar todos os requisitos para ele começar a trabalhar”. Para resolver este tipo de problemas uma solução é usarmos máquinas virtuais, com todos os requisitos já instalados e prontos para uso. O VMWare e o VirtualBox são exemplos interessantes para estes casos, mas ainda assim exigem um pouco de trabalho para configurar e instalar tudo. O Vagrant é uma ferramenta que auxilia exatamente neste quesito, a criação das máquinas virtuais. O Vagrant roda em Windows, Linux e MacOS X (onde eu fiz os testes que apresento nesse post) e necessita do VirtualBox para funcionar. Neste post vou descrever os passos que fizemos na Coderockr para criarmos máquinas virtuais Ubuntu dentro de nossos MacOS X. O primeiro passo é fazer o download do Vagrant no link http://downloads.vagrantup.com/tags/v1.0.2 Depois precisamos fazer o download da máquina virtual “base” que será usada para gerar as máquinas para cada projeto, com o comando

Snippet do Sublime Text 2 para gerar getters e setters em PHP

Aqui entre nós… Escrever as funções de get() e set() para cada atributo de uma classe é uma daquelas tarefas repetitivas e chatas. Seguindo o conceito de DRY eu fiz uma pesquisa para encontrar alguma forma de gerar isso de maneira mais fácil, usando o meu editor de programação favorito, o Sublime Text 2. Para resolver isso basta escolher a função Tools->New Snippet e substituir o texto pelo novo snippet