Novo blog

Olá, após muito tempo com este blog parado gostaria de anunciar que começarei a escrever em um novo endereço: http://blog.fernandomantoan.com. Resolvi recomeçar utilizando um CMS totalmente focado em blogs e extremamente mais simples (e até com menos recursos) do que o WordPress, esse CMS é o http://ghost.org.

Em breve migrarei os principais artigos para o novo blog e continuarei os posts da Série BackboneJS assim como novos artigos sobre AngularJS, Zend Framework 2, Laravel, OAuth2, Rails e Android, assim como adicionarei os devidos redirecionamentos da URL atual.

Nos vemos por lá!

Série Backbone.js: Parte 5 – Router, Histórico, Backbone.sync, Eventos e mais

O Backbone.js é um framework Javascript que fornece componentes para melhorar a estrutura de aplicações web. Dentre os componentes encontram-se o Router e o History, responsáveis pela criação de rotas e gestão do histórico do browser via Javascript. Além destes componentes, existe a função Backbone.sync que é a função utilizada para realizar toda a sincronização com o servidor, através dos métodos de cada componente (apresentados nos artigos anteriores), a API de eventos utilizada para gestão e disparo de eventos, tanto customizados, quanto os eventos definidos no framework. Existem também alguns métodos utilitários, que auxiliam na resolução de pequenos detalhes como, por exemplo, integração com outros frameworks.

Continuar lendo Série Backbone.js: Parte 5 – Router, Histórico, Backbone.sync, Eventos e mais

Série Backbone.js: Parte 4 – Collection

Backbone.js

O Backbone.js é um framework Javascript que fornece componentes para melhorar a estrutura de aplicações web. Dentre os componentes, encontra-se a Collection, que representa um conjunto ordenado de Models e traz diversos métodos úteis para trabalhar com coleções de dados.
Continuar lendo Série Backbone.js: Parte 4 – Collection

Aplicação Android para a Latinoware 2012

Latinoware 2012

A Conferência Latino-Americana de Software Livre – Latinoware 2012 ocorrerá nos dias 17, 18 e 19 de Outubro, aqui em Foz do Iguaçu. Promovida pela Itaipu Binacional, Fundação Parque Tecnológico Itaipu – Brasil, Companhia de Informática do Paraná (Celepar) e Serviço Federal de Processamento de Dados (Serpro), a Latinoware é um evento que abre espaço para discussões e reflexões sobre a utilização do Software Livre na América Latina, além de promover a integração e a valorização latino-americana.

Esse ano, eu e meu amigo Anderson Rodrigo Davi, tivemos a curiosidade de pesquisar sobre uma aplicação Android contendo a grade do evento, o que facilitaria bastante para consultar as palestras do dia. Vimos que desde sua primeira edição, o evento nunca ganhou a devida atenção nestes dispositivos. Entrei em contato com o pessoal da organização e eles autorizaram a criação de uma aplicação simples para apresentar a grade de palestras dos três dias.

Só que, o que adiantava a gente construir uma aplicação fechada, sendo que é uma conferência de software livre? A idéia então foi a de construir a aplicação e além disso disponibilizar seu código-fonte, para que desenvolvedores que tenham interesse possam contribuir para chegar a uma aplicação com mais recursos, ou até que desenvolvedores mais experientes tenham o interesse em investir em uma aplicação semelhante.

Bom demos o pontapé inicial, você pode baixar a aplicação na Play Store. Se tiver interesse em contribuir com a aplicação, acesse o repositório no GitHub. Toda contribuição é bem-vinda, se quiser relatar algum bug, sugerir funcionalidade, contribuir com novas funcionalidades, traduzir para outros idiomas, etc. Temos alguns planos em mente como:

  • Construir uma base de dados localmente no aparelho, evitando consultar o backend;
  • Implementar o recurso de marcar palestras que serão assistidas;
  • Corrigir os bugs apresentados na versão atual;
  • Incluir demais funcionalidades implementadas pela comunidade.

Nos vemos na Latinoware 2012!

Série Backbone.js: Parte 3 – Model

Backbone.js

O Backbone.js é um framework Javascript que fornece componentes para melhorar a estrutura de aplicações web. Dentre os componentes, encontra-se o Model, responsável por representar os dados de uma aplicação, conter regras de negócio, incluindo validações, conversões, controle de acessos, e definir os aspectos de persistência.
Continuar lendo Série Backbone.js: Parte 3 – Model

Série Backbone.js: Parte 2 – View

Backbone.js

O Backbone.js é um framework Javascript que fornece componentes para melhorar a estrutura de aplicações web. Dentre os componentes, encontra-se a View, responsável pela apresentação de dados em uma aplicação MVC. Neste segundo artigo da série de seis artigos sobre Backbone.js, será apresentada a classe Backbone.View, com exemplos práticos, utilização de templates, e integração com jQuery.
Continuar lendo Série Backbone.js: Parte 2 – View

Internacionalização e Localização com Zend Framework

Na web  atual os websites  e aplicações são acessados por um público distinto de usuários, cada um com sua cultura e idioma. Este fato pode ser percebido pela gama de serviços grandes, como Google e Twitter, que tendem a verificar o idioma nativo do usuário e adequar o conteúdo a este idioma. O Zend Framework é famoso por fornecer componentes para funcionalidades triviais de aplicações web  atuais, e a internacionalização e localização também é suportada nesta gama de componentes. Este artigo demonstrará os principais componentes envolvidos neste processo, com explanações detalhadas e exemplos práticos, incluindo duas abordagens de implementação no MVC do Zend Framework.
Continuar lendo Internacionalização e Localização com Zend Framework

Zend_Paginator_Adapter para Doctrine 2

O componente Zend_Paginator simplifica bastante a paginação de dados e fornece Adapters para suportar várias fontes de dados (objetos Zend_Db, arrays puras, etc). O FernandoMantoan_Paginator_Adapter_Doctrine foi criado para ser um Zend_Paginator_Adapter que fornece paginação para os objetos QueryBuilder do Doctrine 2.

Configuração

O primeiro passo é baixar o componente para o seu projeto:

git clone https://github.com/fernandomantoan/zf1-doctrine2-paginator-adapter

Basta copiar a pasta library/FernandoMantoan para a pasta library do seu projeto Zend Framework, e adicionar no application/configs/application.ini as seguintes linhas:

autoloaderNamespaces[] = FernandoMantoan

Uso

O Adapater necessita de um objeto QueryBuilder, para construir as consultas para contagem das páginas e paginação. O exemplo a seguir cria um QueryBuilder:

$queryBuilder = $entityManager->createQueryBuilder();
$queryBuilder->select('c')
             ->from('Entity\Contacts')
             ->orderBy('c.birthdate');

Tendo o objeto QueryBuilder criado, basta instanciar o Adapter e o Zend_Paginator:

$adapter = new FernandoMantoan_Paginator_Adapter_Doctrine($queryBuilder);
$paginator = new Zend_Paginator($adapter);
$paginator->setCurrentPageNumber($currentPage)
          ->setItemCountPerPage(10);

Próximos Passos

O componente é bem simples e direto, foi criado para a utilização em um projeto e para suprir as necessidades do mesmo. Quem tiver interesse em contribuir, sugerir funcionalidades ou reportar bugs, basta acessar no GitHub, toda contribuição é bem-vinda.

Série Backbone.js: Parte 1 – Introdução

O Backbone.js é um framework Javascript que fornece componentes para melhorar a estrutura de aplicações web. Entre estes componentes encontram-se Models, Collections e Views, além de meios nativos de interagir com backends RESTful e JSON. Nesta série de 6 artigos sobre Backbone.js serão abordados seus principais componentes e, ao final, será construída uma aplicação simples de contatos contemplando cada um dos componentes apresentados e com um “bônus” sobre o Slim framework.
Continuar lendo Série Backbone.js: Parte 1 – Introdução