Borland DevCon - USA - Report # 12 – "Delphi 2007 (Highlander)" e ASP.NET 2.0

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Acompanhe em tempo real a cobertura exclusiva do maior evento do mundo para desenvolvedores Borland Delphi

DevCon - USA

Report #12

"Delphi 2007 (Highlander)" e ASP.NET 2.0

 

Criado - 9 de Novembro de 2005 – 16:31 p.m. (local time)

Atualizado – 9 de Novembro de 2005 – 18:26 p.m. (local time)

 

Nesta palestra de Jim Tierney da Borland, vimos um pouco do que está previsto para o Delphi “Highlander” relativo ao suporte ao ASP.NET 2.0 (acredito que o nome oficial do Highlander vai ser naturalmente Delphi 2007). Como sabemos, o Delphi 2006 suporta a versão 1.1 do .NET Framework, o suporte para o .NET Framework 2.0 (lançado oficialmente essa semana pela Microsoft) será lançado na próxima versão do Delphi (acredito que no final de 2006). Vamos a uma breve descrição dos recursos que serão suportados, conforme apresentados por Jim (vale ressaltar que a maioria dos recursos já estão disponíveis no .NET Framework 2.0, porém não possuem ainda o suporte na IDE).

Master Pages

Esse novo recurso permite que você crie uma página “padrão”, com elementos que serão comuns a todas as páginas ASPX do projeto. A partir da Master Page, você pode “herdar” (não é herança da POO) as características visuais da página mestre. O ASP.NET faz o “merge” do conteúdo da página mestre com a página que usa seu conteúdo.

Vejamos um exemplo de como ficaria um ASPX Master Page e uma páginas ASP.NET usando a Master Page. Abaixo uma Master Page (observe a diretiva “Master” no ASPX), o contentplaceholder indica a área na qual as páginas “descendentes” colocarão controles específicos.

Conteúdo da Página Padrão
E aqui está a página ASPX usando a MasterPage. Observe o atributo MasterPageFile na diretiva Page.

 

<%@ Page Language="X"

 MasterPageFile="~/MasterPage.master"

AutoEventWireup="true" CodeFile="Default.aspx.pas" Inherits="_Default"

Title="Untitled Page" %>

Runat="Server">

    Página usando Master Page

Themes e Skins

Esse recurso permite que especifique temas para sua aplicação ASP.NET de forma muito semelhante a funcionalidade de temas do Windows XP. Dentro de um diretório você vai colocar arquivos que definem o estilo de controles, semelhante ao que acontece com CSS, e a partir daí, todos os controles ligados ao Skin passam a ter o mesmo layout / aspecto.

Um exemplo:

 

Theme="MeuTema" %>

DataSources

Os DataSources do .NET 2.0 são novas estruturas que centralizam toda a manipulação e acesso a dados, e substituem as classes DataAdapter, Connection, DataTable etc. (na verdade elas passam agora a ser utilizadas internamente pelos DataSources). De forma semelhante ao que já existe no 2.0 nativo (SqlDataSource, XmlDataSource etc.), a Borland vai criar o BdpDataSource. Dentro dessa estrutura, estarão comandos de Insert, Delete, Update, Select, informações de conexão etc. Controles de tela (como o novo GridView) vão fazer DataBind diretamente para DataSources, em tempo de design.

Acredito que a definição de um BdpDataSource vai ser semelhante a seguir (adaptei a partir de um SQLDataSource), um “draft” só para dar uma idéia:

 

  ID="BdpDataSource1" runat="server"

    ConnectionString="CaminhoBanco"

        SelectCommand="SELECT * FROM EMPLOYEE”>

 

E aqui como um GridView faria referência a esse BdpDataSource:

 

   

            ID="GridView1" runat="server"

            AutoGenerateColumns="False"

            DataSourceID="BdpDataSource1"

            AllowPaging="True"

            CellPadding="4"

            ForeColor="#333333"

            GridLines="None"

            PageSize="5">

 

 

 Report12.jpg

GridViews e DataSources

Code-Beside

Esse é um novo recurso do ASP.NET, teremos o Code-Beside, que é semelhante ao Code-Behind. O Code-Behind permite hoje que você separe o código de design e apresentação (ASPX) da lógica e eventos da aplicação (.PAS). Isso fica compilado em um Assembly .NET. A vantagem é que o Code-Beside é recompilado pelo ASP.NET no mesmo momento da compilação do ASPX, e não mais antes do deploy.

Abaixo um exemplo de página usando um Code-Beside (note o atributo CodeFile):

 

<%@ Page Language="X"

 AutoEventWireup="true"

CodeFile="Default2.aspx.pas" Inherits="Default2" %>

 

Além disso, a linguagem Delphi vai suportar o recurso de classes “parciais” (fragmentos de classes) , ou seja, poderemos ter código de uma mesma classe separado em várias units/arquivos.

Diretórios Especiais

Alguns diretórios de aplicações ASP.NET 2.0 possuem funcionalidades especiais, de forma semelhante ao que o BIN é para o ASP.NET 1.1.

Novos diretórios:

·         App_Code – Código .PAS para Code-Beside;

·         App_WebReferences – Arquivos WSDL e DISCO;

·         App_Data – Arquivos de dados, como XML e MDF;

·         App_Themes – temas da aplicação (skins);

Suporte a diretórios

Não teremos mais arquivos BDSPROJ ou DPR (será opcional, dependendo do tipo de projeto). O Delphi Highlander vai considerar todos os arquivos do diretório corrente como parte do projeto. Para adicionar um arquivo ao projeto, basta copiar para o diretório ou pasta especial (nada de Add to Project). Com isso, teremos o menu File>Open Web Site que vai permitir que você escolha um diretório ao invés de um BDSPROJ/DPR, claro.

Segundo Tim, aplicações construídos no Visual Studio .NET vão poder ser abertas no BDS sem modificação, e vice-versa.

Precompilação

Esse recurso vai permitir que você precompile todo um projeto ASP.NET e faça o deploy do mesmo para um servidor. Veja que o termo precompile aqui significa que arquivos PAS e também ASPX serão precompilados (atualmente o ASPX é compilado no momento do primeiro acesso pelo browser). Isso vai permitir um startup mais rápido da aplicação, além de proteger a propriedade intelectual, visto que é muito simples hoje fazer engenharia-reversa de código MSIL.

Providers

Vai permitir que aplicações Delphi ASP.NET armazenem informações customizadas para cada usuário, como por exemplo, layout preferido (ex.: a cor de fundo), e-mail, login, senha, funções (roles), a partir do Web.Config e Machine.Config. Uma página de administração predefinida do ASP.NET 2.0 vai permitir a edição de usuário, roles etc.

Migração

Ao abrir um projeto do Delphi 2005/2006 no Highlander, a IDE vai fazer algumas conversões, como por exemplo, mover arquivos para diretórios especiais (citados anteriormente), converter code-behind para code-beside, remover declarações de controles do código etc.

Minha opinião

O ASP.NET 2.0 tem inúmeros outros recursos adicionais que não foram citados aqui e vários novos componentes. A Microsoft estima que o aumento de produtividade do ASP.NET 1.1 para o 2.0 é de 70%, então, vale a pena começar a conhecer as novas classes e o framwork, aguardando a próxima versão do Delphi para começar a praticar. Acredito que não vai levar muito tempo para a Borland lançar um “preview” que possa ser usado no Delphi 2006, suportando o .NET Framework 2.0.

 

Guinther Pauli

Editor Geral Revista ClubeDelphi

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?