• Início
  • Fórum
  • Serviços
  • Downloads
  • Wiki
  • Lista de sites vulneráveis
Fique por dentro

Introduzindo o Recess PHP Framework

dez01
2011
6 Comentários Postado por Rodrigo Santiago



Olá galera, nesse post vamos conhecer mais um notável framework e também uma das ferramentas mais interessantes e práticas na questão de desenvolvimento PHP: o Recess Framework.

O que é o Recess ?

O Recess foi criado pelo nosso amigo Kris Jordan, um ex-funcionário da Microsoft (amigos do Linux não gostarão da idéia), com o intuito de fornecer uma estrutura concisa, leve e fracamente acoplada.

E não é só isso, ele resolveu também aderir a um conceito muito conhecido de estilo arquitetural WEB: o paradigma REST, criado por um outro amigo nosso bem importante.

O que o Recess tem de diferente?

Recess foi projetado para escrever aplicações simples, de forma rápida e leve, utilizando extensivamente TODOS os métodos da Interface Uniforme do HTTP (GET, PUT, POST e DELETE) e fornecendo alguns tipos de representações dos dados (HTML ou JSON). Isso faz com que a aplicação desenvolvida seja integrada facilmente com qualquer outra externa em qualquer estrutura devido à interoperabilidade fornecida por essa ferramenta genérica do HTTP. (isso lembra um WebService?).

Mas afinal, além de ser um framework baseado nos conceitos de REST, quais são as vantagens ?

1ª  O framework possui um ORM (Mapeador Objeto Relacional) à prova de balas que desenvolve queries super complexas, para todos os tipos de operações que compõem um CRUD da vida.

2ª Recess usa um esquema de Annotations (blocos de comentários especiais em classe ou método) para criar relacionamentos, routes e manipulação de formatos (HTML ou JSON) para exibir na aplicação. Por exemplo , se eu criasse algumas annotations iguais essas no código abaixo:

1
2
3
4
5
6
7
8
/**
*  !Table pedido
*  !BelongsTo cliente
*/


class Pedido{

}

Imaginamos que um pedido pode ser realizado por um cliente, sendo assim ele “pertence” (belongs to) a um cliente. Utilizamos dois comentários especiais: um para definir a tabela e outro notando uma espécie de relacionamento. Para termos uma ideia, veja o que o Recess  faz quando aplicamos essas annotations:

 Bacana né ? O framework gerou um fragmento de documentação apenas com simples comentários. A partir daí, o Recess ja sabe qual classe ele irá relacionar (Cliente), sabe qual FK deverá trabalhar (clienteId), e mais: anexa automaticamente métodos na classe Pedido para manipular o cliente relacionado de uma forma muito simples como mostra a imagem abaixo:

Ou seja, temos métodos para setar um cliente, buscar o cliente referenciado (realmente o método faz toda a mágica das queries e traz um cliente em forma de objeto ) e desvincular um cliente de um pedido (não seria legal, mas…).

3ª Uma GUI para construção rápida das suas aplicações, contendo todas as informações que precisa do seu projeto. Com isso, é menos código, escrevendo somente o necessário.

4ª Inclui uma documentação em HTML das suas classes, sendo possível enriquecer a documentação gradativamente  via comentários nas classes e nos métodos. Vejamos um exemplo: eu crio pequenos comentários de como será, o que retornará o meu método…

1
2
3
4
5
6
7
8
9
10
11
12
/*

* Método que tem como função exibir um formulário de cadastro de post por um usuário
* Exemplo:
*
*    $controller->createPost('1'); => /exemplo/site/1/post/create
*
*    Agradecimento ao Manolo Master R'Santiago por descrever este método.
*    @param $usuario_id
*    @return Form para cadastro de post

*/

e agora veja o que o Recess faria com esses comentários:


    Resumindo, através de comentários, o Recess gerou uma mini-documentação em HTML de um método chamado createPost(). E olha que não alterei nenhum arquivo CSS…

5ª É totalmente flexível tanto a um ambiente de produção e ambiente de desenvolvimento e testes sem nenhuma mudança de path adicional. Somente um drag ’n’ drop e tudo ficará como o esperado.

Aonde posso encontrá-lo?

Ao visitarmos o site do projeto, podemos ver Tutoriais, um livro da documentação oficial (ainda em desenvolvimento), o blog , o fórum oficial do framework para sanar as dúvidas,  o repositório oficial do projeto e muita coisa bacana. Enfim, vale a pena dar uma olhada, baixar a versão estável, rodar em sua localhost, e ver o quanto ele é simples, ágil e como ele ajudará a criar aplicações rápidas. Só vendo na prática pra saber o que estou dizendo !

Vale lembrar que o framework está em constante expansão , graças às pessoas que colaboram com o projeto, e particularmente no ano que vem (até la terei tempo!) começarei a fazer isso também :)

Ah, como todo framework legal, existe um tutorial explicando como fazer um blog. Para os amigos que ja querem ir experimentando, sintam-se a vontade: http://www.newmediacampaigns.com/page/how-to-create-a-blog-with-recess-framework-part1.

 

Nos próximos posts, veremos tutoriais de como fazer bom proveito dessa ferramenta, como utilizaremos a interface gráfica, como criar um simples CMS rapidamente, como criar a documentação e também iremos desenvolver umas aplicações bem bacanas com o projeto. Aguardem !

E é isso ! Espero terem gostado e até a próxima :)

Postado em Frameworks, PHP - Tagged recess
SHARE THIS Twitter Facebook Delicious StumbleUpon E-mail
« Parceria Portal PHP e Novatec
» Instalando CakePHP 2.0
  • Pingback: Rodrigo Santiago

  • Pingback: Portal PHP

  • Pingback: Suissa

  • Pingback: Emerson Soares

  • Carlos Alan Alves

    Interessante, muito bom o post, parabéns.

  • Pingback: Carlos Alan

Newsletter

enviando...
Nome
Email

Ajude a pagar o café

Nós não cobramos pelo conhecimento aqui passado, porém se você sentir vontade de nos ajudar com o café e a hospedagem, sinta-se a vontade para doar a quantidade que quiser.

facebook

Posts Recentes

  • Configurando Ambiente de Desenvolvimento em PHP no Linux.
  • Downloads e Wiki
  • Paginação e Ordenação
  • Visualizando registros do DB
  • Excluindo registros do banco de dados com CakePHP 2.0

Categorias

  • Artigos
  • CMS
  • Destaques
  • Dicas
  • Eventos
  • Frameworks
  • Notícias
  • PHP
  • Tutoriais
  • Video Aulas

Tags

Agregação Associação automático banco de dados bibliotecas BuddyPress CakePHP Composição configuração Cookies CURL description Dicas especialização exceptions facebook final Generalização hacker cup Herança importação Joomla mapeamento mvc namescpaces objeto openinviter Orientação a objetos permalink persistência de dados php Polimorfismo regex rss segurança Sessions Sessões Smarty SPL Template title Tutorial Vídeo aula wordpress youtube

RSS

  • Posts
  • Comentários

Amigos do Portal

  •  
  • Fernando Valente
  • jQDOM
  • Blog do Suissa
  • PHP Brasil Comunidades
  • PHP MS

Listas de PHP

  • PHPMS
  • GOPHP
  • PHP Avançado
  • PHP MG
  • PHP Paraíba
  • PHP Rio
  • PHP AC
  • PHP-Brasil
  • PHP Curitiba
  • PHP-GTK Brasil
  • PHP-MySQL-BR
  • PHPBA
  • PHPeMySQL

EvoLve theme by Blogatize  •  Powered by WordPress Portal PHP
Só mais um site WordPress