DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Artigo Clube Delphi 110 - Curso de Delphi Prism – Parte 3

Artigo da Revista Clube Delphi Edição 110.






Curso de Delphi Prism – Parte 3

Novidades da Linguagem – Classes parciais,  Tipos anônimos e Métodos de extensão

 

Do que trata o artigo

Lançado pela Embarcadero, empresa que adquiriu a CodeGear, o Delphi Prism é a nova forma de desenvolver aplicações para o .NET Framework e Mono utilizando o Object Pascal e o IDE do Visual Studio 2008. Nesta terceira parte do curso, apresento mais sobre os novos recursos da linguagem utilizada pelo Delphi Prism, que são inúmeros se compararmos com o Delphi for .NET tradicional ou mesmo Delphi Win32.

Para que serve

Comparar a sintaxe do antigo Pascal e Delphi tradicional com a moderna e poderosa linguagem suportada pelo Delphi Prism, conhecer os principais novos recursos da linguagem e vantagens.

Em que situação o tema é útil

O Delphi Prism abre uma porta incrível para os desenvolvedores Delphi, pois podem agora utilizar um IDE robusto, rápido e estável para construir aplicações para .NET, incluindo as novas tecnologias ASP.NET 3.5, ASP.NET AJAX, WPF, WCF, MONO etc. usando uma versão evoluída do Object Pascal, que mescla os melhores recursos do Delphi e do C# 3.0.

 

Resumo do DevMan

Neste artigo falaremos essencialmente de classes e como elas se comportam no Delphi Prism. O recurso de classes parciais permite que o código de uma mesma classe possa ser separado em diferentes arquivos de códigos-fontes. Tipos anônimos podem ser usados para, em uma mesma linha, declarar, instanciar e inicializar um objeto sem tipo. E classes / métodos de extensão permitem injetar código em classes pré-existentes, sem usar herança ou mesmo sem ter acesso ao código-fonte da classe alvo.

 

Classes, objetos, propriedades automáticas e Generics

  As classes fazem parte da vida do desenvolvedor Delphi desde a sua primeira versão. Mas as coisas não eram simples no tempo do Pascal. Para quem lembra, tínhamos que fazer algo como na Listagem 1. Este fragmento de código foi retirado de um projeto que desenvolvi ainda nos tempos acadêmicos (1996), disponível com os fontes em no meu site no CodeCentral da Embarcadero (veja seção Links). Dados e funcionalidade ficavam separados, fazíamos um record para guardar os dados de uma entidade, depois uma variável file para gravar o record no disco e um buffer de memória para manipular o registro. E separadamente, os procedures para manipular esses dados.

 

Listagem 1. Records, variáveis globais e programação estruturada

TCliente = record

  codigo: integer;

  ai: char; // undelete à moda antiga

  nome: string39;

  ...

var

Fclientes : file of TCliente;

Bclientes : TCliente;

...

Procedure open_Fclientes;

Procedure close_Fclientes;

Procedure Cria_Fclientes;

Procedure zera_cli;

Procedure menu_cli;

Procedure mostra_cli;

 

O suporte a objetos veio no Turbo Pascal 5.5, com a inclusão da palavra-chave object. Basicamente podíamos colocar os procedures que trabalhavam com os dados do record dentro do próprio record (que então virou object). Mais tarde, no Delphi 2, a palavra-chave foi renomeada para class, por questões óbvias, convenção que permanece até hoje, inclusive no Prism e C#. O record ainda existe, e evoluiu, podemos no Prism colocar procedures dentro de records. E em algumas versões do Delphi for .NET também. Ele é usado ainda hoje quando queremos criar estruturas que são passadas por valor, e não por referência, como o que acontece no caso de classes.

  Tudo bem, mas o que isso tem a ver com esse curso? Novamente, estamos olhando para o passado para entender o presente e futuro. Vamos ver como seria minha antiga classe "



ATENÇÃO! A exibição deste artigo foi interrompida.

Clique aqui e acesse o Leitor Digital DevMedia para ler este artigo completo.




    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Guinther Pauli

Guinther Pauli - guintherpauli@gmail.com - Editor Geral .NET Magazine Brasil e ClubeDelphi - Microsoft Certified: MCP, MCAD, MCSD.NET, MCTS, MCPD e certificado Delphi: 3,5,6,7,2005,2006,Delphi for Web e Delphi for Linux http://guintherpauli.blogspot.com http://twitter.com/GuintherPauli http://cc....


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03