Escolhendo um framework PHP


Desde que comecei a trabalhar com programação que me interessei por ferramentas que pudessem auxiliar no meu trabalho, seja para agilizar o processo de desenvolvimento, ou para melhorar a qualidade do código. Logo no início me chamaram atenção os CMS como o Joomla, Drupal e WordPress, e posteriormente os frameworks.

Minha história com frameworks começou quando comecei a trabalhar na UFPB , em 2007, no projeto da UFPB Virtual, de cursos à distância. Precisava desenvolver um sistema para possibilitar a integração do Sistema de Controle Acadêmico com o Sistema de Ensino à Distância (Moodle). Foi aí que conheci o Zend Framework, em sua primeira versão. Um dos primeiros frameworks PHP, que parecia uma maravilha diante do que tinha visto até então, pois englobava várias ferramentas em uma só, dentro de um padrão pré-definido por uma empresa consolidada. Ter esse conhecimento no meu currículo, sem dúvida, me abriu várias portas.

Ler maisEscolhendo um framework PHP

Slides da palestra “Seu framework é melhor pra quê?” no 1º PHP Day em João Pessoa


Neste sábado (10 de Novembro de 2018) aconteceu o 1º PHP Day em João Pessoa/PB, realizado pela comunidade do PHP-PB. Fui convidado para dar uma palestra, e o tema que apresentei foi “Seu framework é melhor pra quê?”.

Ler maisSlides da palestra “Seu framework é melhor pra quê?” no 1º PHP Day em João Pessoa

Palestra: Certificação Zend Framework


Neste sábado, 09 de Março de 2013, apresentei uma palestra online via Google Hang Out falando sobre minha experiência ao tirar a certificação Zend Framework.

ProPHP

Para quem tiver interesse, o vídeo pode ser visto logo abaixo, ou na página do PHP-PB (php-pb.net). E disponibilizei os slides da palestra no meu slideshare: http://www.slideshare.net/jaimecpn.
Link direto para esta palestra: http://www.slideshare.net/jaimecpn/certificao-zend-framework.

Ler maisPalestra: Certificação Zend Framework

Zend_Paginator retornando objetos


Imagine a seguinte situação: você precisa fazer uma consulta numa tabela que tem muitos registros e, portanto, precisa fazer paginação do resultado. Ok até aí, é só criar um Zend_Db_Select e usar ele como parâmetro para um Zend_Paginator. Porém, na hora de iterar sobre o getItems() do paginator, você estará trabalhando com um array em vez de trabalhar com um objeto da sua classe modelo. O que fazer? Bom… você pode pegar todos os resultados, jogar num foreach e converter no objeto em questão, correto? Mas pra todo objeto vai ter que fazer isso de forma repetida… E agora?

Eis minha sugestão: Vamos criar um novo adapter para Zend_Paginator que é uma variação do Zend_Paginator_Adapter_DbSelect. A diferença é que esse adapter recebe um parâmetro adicional no construtor com o nome da classe modelo que você deseja como retorno na paginação.

Ler maisZend_Paginator retornando objetos

Zend Certified Engineer Zend Framework


Recebi o certificado ZFNo dia 27 de novembro, fiz a prova de certificação de Zend Framework. Venho agora compartilhar com vocês minha experiência e dar umas dicas de como estudar para os que estiverem interessados em fazer também.

Algumas pessoas talvez se perguntem “Por quê fazer uma prova de certificação?”. Há bons motivos para isso. Além de uma realização pessoal, que é o motivo que leva muita gente a fazer (acredite!), uma prova de certificação significa que a empresa que criou ou é responsável por uma linguagem/aplicação/ferramenta garante que você sabe utilizá-la bem, e isso é válido mundialmente. No mínimo é um grande diferencial no seu currículo, que poderá ter nele o selo oficial da certificação (esse que se encontra no site na coluna direita, acima).

Ler maisZend Certified Engineer Zend Framework

Slides da palestra de Zend Framework na VIII Semana da Computação da UFPB


Nesta segunda-feira (26 de Novembro de 2012) deu-se início à VIII Semana da Computação da UFPB em João Pessoa/PB. Fui convidado para dar uma palestra sobre Zend Framework, e o tema que apresentei foi “Conhecendo o Zend Framework”.

Conhecendo o Zend Framework

Ler maisSlides da palestra de Zend Framework na VIII Semana da Computação da UFPB

Calendário para Zend Framework


Precisei criar um calendário HTML dinâmico, e depois de pesquisar bastante, e achar várias soluções que não resolviam todas as minha necessidades, resolvi criar eu mesmo uma classe para isso. Ou melhor, um View Helper para Zend Framework. Assim, eu poderia usar em vários outros projetos, diante da necessidade. Só que para ele poder realmente ser bem aproveitado, precisaria ser fácil de customizar, tanto visualmente, quanto, com relação à sua funcionalidade.

Pensei então nas possíveis utilizações para uma classe dessas, e decidi que ela precisava:

Ler maisCalendário para Zend Framework

Cálculo de tempo decorrido com ZF


Não é muito raro vermos em alguns sites, principalmente no rodapé, a informação do tempo decorrido para exibir uma página. E nos sites em PHP, geralmente é usado a função microtime para calcular esse tempo, chamando-a antes e depois do trecho de código que queremos calcular o tempo de execução, e depois subtraindo o primeiro do último.

Isso é muito útil, principalmente para trabalharmos na melhora da performance do código. Foi daí que me deu a idéia de criar um plugin para Zend Framework para facilitar o uso dessa função, e eis o resultado:

Ler maisCálculo de tempo decorrido com ZF

Filtro de transliteração para o ZF


Já por várias vezes trabalhando em sites, tive a necessidade de converter strings para um formato sem acentos, cedilha, espaços, caracteres especiais, ou letras maiúsculas. Seja pra renomear um arquivo, renomear o título de uma notícia para a url ou criar um alias para um nome de usuário, a idéia é sempre a mesma, ou no mínimo muito semelhante. Isso é chamado transliteração, ou mais comumente, em inglês transliteration.

Procurando na internet achei várias expressões regulares que fazem o trabalho, mas nenhuma dela tinha tudo que eu queria, então resolvi fazer uma classe seguindo o modelo de classes do Zend Framework, e acabei fazendo duas: uma de filtro, e um view helper, que usa o filtro.

Ler maisFiltro de transliteração para o ZF