O CakePHP é um framework gratuito, cuja a linguagem de desenvolvimento utilizada é PHP e sua arquitetura é a estrutura MVC (Model, Controller, View). O seu principal objetivo é o desenvolvimento de aplicações ágeis e flexíveis.

Rápida introdução ao modelo MVC

A estrutura mvc é um padrão de desenvolvimento que tem por finalidade a separação em 3 níveis principais, que são os já citados Model, Controller e View (Modelo, controlador e Visão respectivamente), onde cada uma tem o seu papel exclusivo.

  • Model - o model representa os dados
  • Controller - Manipula as requisições dos usuários
  • View - Camada de visualização dos dados.

A utilização deste modelo facilita a manutenção nas aplicações devido a sua apresentação de pacotes modulares. Com esta separação de código fica mais fácil o desenvolvimento e se torna também mais independente. Novas funcionalidades podem ser acrescentadas sem muitos problemas devido ao modelo adotado. Dessa forma também facilitando o trabalho entre desenvolvedores e designers que podem trabalhar simultaneamente em determinadas áreas do projeto, além de ser também mais fácil para o desenvolvedor realizar uma modificações sem que estas afetem outras áreas.

Requisitos mínimos necessários para a utilização do CakePHP.

Os requisitos mínimos para a sua utilização são os seguintes:

  • PHP 5.2.8 ou acima
  • Servidor http, como por exemplo, o apache. Um exemplo seria o xampp ou wamp.

O CakePHP também suporta uma boa variedade com relação a bancos de dados, tendo dentre eles o MySQL (a partir da versão 4), PostgreSQL, Microsof SQL Server ou SQLite.

Licença para uso

Com relação a licença, o CakePHP está licenciado pela MIT, que nos dá o direito de modificar, distribuir e republicação do código fonte, além de poder utilizar em projetos de sistemas comerciais, claro que mantendo os avisos de copyright inalterados.

Abaixo estão alguns links úteis dos itens que serão utilizados neste artigo:

CakePHP: Você poderá baixa-lo pelo site oficial que é o: http://cakephp.org/, ou pelo Github que é o repositório utilizado pelo CakePHP para manter demais versões e atualizações de plug-ins, etc.

Xampp: pacote que contém os principais servidores de código aberto do mercado, onde estão disponibilizados o banco de dados MYSQL e o apache com suporte as linguagens Perl e PHP. Ele é de fácil instalação e vocês poderão baixa-lo pelo site http://www.apachefriends.org/pt_br/xampp.html Após o download, será preciso descompactar os arquivos dentro de uma pasta web do servidor de aplicação que você esteja utilizando (no momento, estaremos utilizando o xampp, mas você pode utilizar wamp ou algum outro de sua escolha), no meu caso, criei a pasta projetoCake dentro do htdocs e extrai os arquivos para dentro dela. Com isso, já temos o nosso CakePHP instalado e pronto para testar.

Pasta de salvamento dos arquivos descompactados.

Figura 1: Pasta de salvamento dos arquivos descompactados.

Agora vamos acessar o nosso framework para ver o que está acontecendo. Acessaremos ele pela nossa url utilizando o caminho http://localhost/projetoCake e o que temos?

Primeira visualização de erros e avisos.

Figura 2: Primeira visualização de erros e avisos.

Vejam que a nossa instalação foi concluída com sucesso, mas ainda precisamos fazer algumas configurações para a correta utilização do framework.

Como podemos visualizar nas 2 primeiras mensagens de erro apresentadas acima, elas correspondem a um sistema criptográfico do cakePHP. Para a correção destes erros, vamos ao arquivo “core.php” que se encontra dentro da pasta “app/config/” e mudamos as seguintes linhas de código:

Mudança de configurações no core.php

Figura 3: Mudança de configurações no core.php

Onde está escrito “Security.salt”, podemos apagar todo o conteúdo que se encontra entre as aspas após a virgula ou até mesmo uma fração de caracteres e digitar caracteres aleatórios, sendo estes números, letras maiúsculas e minúsculas, só não podem ser caracteres especiais.

No “Security.cipherSeed”, façamos da mesma forma que foi feito no primeiro caso. A diferença é que neste passo só serão passados números.

Atualizemos agora o navegador e vejamos o resultado!

Podem ver que os erros (em vermelho) não existem mais, nos restando apenas os avisos (em amarelo) que informam que a base de dados ainda não foi configurada e a instalação do DebugKit que não foi realizada. De qualquer forma, não ocorrerão problemas caso não façamos a instalação dele no momento. Então para corrigirmos o problema da base de dados, vamos duplicar o arquivo “database.php.default” e renomeá-lo para “database.php”. O arquivo “database.php.default” também será encontrado na pasta “app/config”.

Além disso, precisamos criar a base de dados com o mesmo nome dado a database no arquivo config.php, caso você esteja utilizando o xampp, poderá acessar o phpmyadmin pelo endereço: http://localhost/phpmyadmin e criar lá a sua base.

Vamos agora abrir o arquivo “database.php” que criamos:

Segunda visualização da url.

Figura 4: Segunda visualização da url.

Mudemos então as seguintes informações:

  • host” = caminho onde encontra-se o sistema de base de dados.
  • login” = nome de acesso à base de dados.
  • password” = senha para acesso à base de dados.
  • database” = nome da base de dados.

Essas são as configurações utilizadas para este artigo, mas vocês podem passar as informações que melhor se adequarem aos seus projetos:

Configuração da base de dados.

Figura 5: Configuração da base de dados.

Agora salvamos o arquivo modificado e voltemos a nossa url.

Terceira visualização na url.

Figura 6: Terceira visualização na url.

Pronto! De acordo com o que vimos até o momento, o nosso framework está pronto para utilização e já podemos criar nossas primeiras aplicações.

Para mais informações com relação ao desenvolvimento com CakePHP, vocês podem dar uma vista nas informações passadas pelo site http://book.cakephp.org/2.0/en/index.html, esta versão está em inglês, mas é bem mais completa e com mais detalhes de uso.

Conclusão

Neste artigo, tivemos o nosso primeiro contato com o framework CakePHP, fazendo a sua instalação e configuração, além de uma breve abordagem com relação a estrutura MVC que é utilizada.

Até a próxima!