+4

PRADO - Framework para PHP5

criado por Eric de Oliveira Cavalcanti em 19/08/2005 9:50am
Como não poderia ser diferente, vamos criar nosso Olá Mundo utilizando este interessante framework.

Nós iremos precisar dos seguintes arquivos para esta tarefa:

<table width="508" border="1">
  <tr>
    <td width="184">olamundo.php</td>
    <td width="308">a entrada principal para a aplica&ccedil;&atilde;o</td>
  </tr>
  <tr>
    <td>olamundo/application.spec</td>
    <td>o arquivo de especifica&ccedil;&atilde;o da aplica&ccedil;&atilde;o</td>
  </tr>
  <tr>
    <td>olamundo/HomePage.php</td>
    <td>o arquivo de classe da p&aacute;gina</td>
  </tr>
  <tr>
    <td>olamundo/HomePage.tpl</td>
    <td>o arquivo de template da p&aacute;gina</td>
  </tr>
</table>

Note, que o diretório olamundo pode ser protegido para acesso por usuários finais porque ele contém informações sensíveis da aplicação.

No arquivo olamundo.php, nós iremos iniciar uma aplicação, como mostrado abaixo:

<?php
require_once('framework/prado.php');
pradoGetApplication('olamundo/application.spec')->run();
?>

Toda aplicação PRADO dever ter um arquivo de entrada que especifica a localização do arquivo de especificação da aplicação.

O application.spec é um arquivo XML que configura parâmetros à nível de aplicação, muito parecido com o web.config do ASP.NET. Para este exemplo, seu conteúdo será:

 <?xml version="1.0" encoding="UTF-8"?>
 <application ID="olamundo">
    <request default="HomePage" />
    <alias name="Pages" path="." />
    <using namespace="System.Web.UI.WebControls" />
    <using namespace="Pages" />
 </application>

A diretiva <alias> define path aliases. O alias System é definido internamente referenciando o diretório que contém com o core code do framework. Você pode usar aliases para contruir namespaces. A diretiva <using> especifica o namespace usando na inicialização da aplicação (Você pode usar um namespace no código chamando a funcão using() ).

O elemento request especifica a configuração para interpretar os dados solicitados pelo usuário. O atributo default especifica a página que será exibida se nenhuma página for explicitamente solicitada pelo usuário.

O arquivo HomePage.tpl é uma template de página para a HomePage. Ele contém as seguintes linhas:

 <html>
 <head>
 <title>Olá Mundo!</title>
 </head>
 <body>
   <com:TForm ID="formulario">
    Digite seu nome:
	 <com:TTextBox ID="txtNome" />
	 <com:TButton Text="Clique me" OnClick="clickMe" ID="btnOlamundo" />	 <com:TLabel ID="lblOlamundo" /> </com:TForm>
 </body>
 </html>

Para quem conhece ASP.NET este arquivo é muito familiar e fácil de entender. Observe as tags <com:objeto>, estas tags contém componentes do PRADO que serão renderizados como mostrado abaixo:

<com:TForm ID="formulario"> <form name="formulario" method="post" enctype="multipart/form-data" id="formulario"> 
<com:TTextBox ID="txtNome" /> <input id="txtNome" name="txtNome" type="text" value=""/> 
<com:TLabel ID="lblOlamundo" /> <span id="lblOlamundo"/> 
<com:TButton Text="Clique me" OnClick="clickMe" /> <input id="btnOlamundo" type="submit" name="btnOlamundo" value="Clique me"/> 

Nós anexamos o método da página de nome clickMe para o evento OnClick do botão. Então quando o botão for clicado pelo usuário, o método clickMe será invocado automaticamente.

O arquivo HomePage.php contém o código que define a página HomePage, como mostrado abaixo,

<?php
class HomePage extends TPage
{
    function clickMe($sender,$param)
    {
        $this->lblOlamundo->setText("Olá Mundo, ".$this->txtNome->Text."!");
    }
}
?>

O PRADO ainda possui vários recursos como viewstate, sessions, caching, validação de formulários, autenticação e autorização. Além de tornar possível a criação de componentes de forma simples e prática. Mas tudo isso são assuntos para novos artigos.

Espero que tenham gostado!

Comentários:

Mostrando 1 - 7 de 7 comentários
valeu Eric!

Programa em .NET e se não fosse o VStudio eu não teria tanto interesse nele!

Vou verificar esse SW !

Abraços!

;)

11/10/2005 6:25am (~18 anos atrás)

Olá Olavo,
No site você pode baixar um programa que gera as tags para serem adicionadas no Dreamweaver. Já ajuda bastante. Espero que um dia tenhamos uma IDE para o PRADO.
10/10/2005 9:25pm (~18 anos atrás)

Olá Eric tem alguma ambiente para programacao com esse Framework ?

Muito parecido com .NET!

Mas sem um ambiente se perde um pouco de sua facilidade! Mas é muito bom!
10/10/2005 3:24pm (~18 anos atrás)

Rui disse:
E o wiki brasil para o prado? existe?
02/09/2005 10:39am (~18 anos atrás)

Adler Medrado disse:
Pelo pouco que puder olhar, este framework é o framework em PHP que se aproxima mais do ASP.NET e JSF
31/08/2005 5:23pm (~18 anos atrás)

Não conhecia esse Framework !
LEgal ! Parabens pela divulgação! vou testa-lo com certeza!
25/08/2005 11:08pm (~18 anos atrás)

Pô legal esse teu artigo mano!! Espero pela continuação... um belo incentivo a quem quer desenvolver <<web applications>> de maneira rápida porém dinâmica... Agora o problema é que nem todo mundo, como eu, tem conhecimento sobre ASP.NET e seria legal se você indicasse tb locais em que podemos encontrar informações sobre essa linguagem... No mais, gostei do artigo mano!! Blz!! E como disse, espero continuação... uma série... hehe :]
19/08/2005 4:04pm (~18 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)