Atenção: esse artigo tem uma palestra complementar. Clique e assista!
Curso de Delphi Prism – Parte 1
Curso de Delphi Prism – Parte 2
Curso de Delphi Prism – Parte 3
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
Este artigo trata essencialmente nas melhorias (enhacements) da linguagem Delphi Prism (Oxygene). Veremos os incrementos feitos no for, try, arrays, coleções, case e também, é claro, algumas novidades.
Continuando nossa jornada pelas novidades do Delphi Prism, hoje vamos fazer alguns exemplos bem interessantes. É importante que você tenha lido as partes anteriores deste artigo, pois vou utilizar alguns recursos já apresentados, como tipos anônimos, type-inference, variáveis in-line, propriedades automáticas e construtores estendidos (o que chamamos no C# de object initializers) e mais. Além disso, vamos dar uma breve introdução ao uso de Generics.
Um ponto importante a ser considerado para realizar os exemplos deste artigo. Como comentei, o foco aqui não é o tipo de interface gráfica ou projeto utilizado, o Prism suporta hoje Console, Windows Forms, Web Forms, Web Services, Mobile, WPF, e muito em breve Silverlight e o que mais a Microsoft inventar. O foco aqui é a linguagem. Como padrão, estou usando ASP.NET Web Forms. Então, sempre lembre de criar o projeto com File>New Web Site, escolher a linguagem Oxygene e um diretório e seguir adiante.
A metodologia que vou usar aqui é a seguinte: para cada recurso apresentado, vou criar um método. Quando for testar o código, apenas chame esse método no Page_Load do form. Quando for para o outro tópico, retire a chamada do método e substitua pelo novo. Além disso, muitos dos exemplos aqui apresentados vão usar alguns controles de tela para apresentar algum resultado, então, logo após criar seu Web Site, já coloque no Web Form os controles Label, TextBox, ListBox e GridView. Preparado? Mente aberta? Delphi Prism aberto? Então vamos em frente!
Arrays
Existem várias formas de implementar arrays no Delphi Prism. O tipo mais simples é o array sem limites (unbound), como visto na Listagem 1. Já a Listagem 2, mostra um array com limites (bound). No primeiro exemplo, os limites do array são definidos em runtime, já no segundo, o array é tipado e seus limites já são pré-definidos. Podemos ainda usar tipos enumerados para definir os limites do array. Na VCL, por exemplo, pessoalmente eu criava um array de strings para traduzir os diferentes tipos de estado de TDataSetState (aqui na Listagem 3 vai um exemplo retirado dos fontes do projeto ...