Atenção: esse artigo tem um vídeo complementar. Clique e assista!

Artigo no estilo: Curso

De que se trata o artigo

O artigo demonstra algumas das principais melhorias e palavras reservadas da linguagem do Delphi Prism. Neste artigo, abordaremos preferencialmente recursos que possuem significativas melhorias / incrementos, ou mesmo que não existem, se comparados aos recursos da linguagem Delphi Win32 tradicional.


Para que serve

As melhorias na linguagem servem para tornar a codificação mais enxuta e simples, ao mesmo tempo em que adicionam recursos poderosos presentes em linguagens orientadas a objetos mais modernas, como Java e C#.


Em que situação o tema é útil

O tema pode ser utilizado para aumentar os conhecimentos e melhorar a produtividade utilizando as novidades e melhores funcionalidades da linguagem. Com isso tem-se um código mais refinado, elegante e eficiente. É muito útil para reduzir a codificação, visto que no Prism inúmeras construções da linguagem exigiram várias linhas de códigos adicionais se fossem escritas em Delphi Win32, para se obter o mesmo resultado.

Delphi Prism

Durante o desenvolvimento do artigo, será visto de forma prática a utilização de palavras reservadas, como uso da palavra Var como uma nova forma de representar a definição de variáveis, o surgimento da palavra Yield como a maneira de possibilitar sair de uma iteração, armazenando o seu estado no momento da saída. Também é mostrada a liberação ou eliminação de recursos após o seu uso em determinados blocos de código através da estrutura Using. O uso de Require como alternativa para pré-condições de validação em métodos, onde o fluxo de execução do código para o método somente será executado se as regras definidas na utilização de Require forem satisfeitas. A substituição da unit pelo namespace onde estão presentes os tipos básicos que podem ser utilizados em aplicativos. A novidade do operador New, possibilitando criar novas instâncias de objetos em contraste com a forma tradicional utilizada em outras versões anteriores do Delphi, entre muitas outras novidades.

Var

O Delphi Prism apresenta uma nova forma de indicar a definição de variáveis, além da forma tradicional utilizada em outras versões do Delphi, ou seja, em uma seção separada no início da definição de algum método. No Prism, isso não é mais necessário, podendo as variáveis serem criadas e inicializadas no formato inline (na linha de código onde ocorrerá a sua utilização ou existir a necessidade de definição da variável). A Listagem 1 indica um exemplo desta utilização. Veja que o ArrayList é declarado da forma tradicional, já a variável “a” é declarada no interior do bloco de código.

Listagem 1. Código para demonstrar o uso de var


  method MainForm.button1_Click(sender: System.Object; e: System.EventArgs);
  var
    x: ArrayList;
  begin
    x := new ArrayList();
    var a : String;
    a := "teste";
    x.Add(a);
  end; 

Outra utilização de var é demonstrada no código da Listagem 2 onde o tipo da variável é definido através de seu contexto de uso, sem a necessidade de indicar o tipo que será utilizado. A definição de variavel_inteira deduz o tipo de retorno da função retorna_inteiro, dessa forma utilizando seu tipo, neste caso um Int32. Além disso, a variável mensagem também utiliza o mesmo formato de dedução do tipo a ser utilizado, demonstrando que para vários tipos de dados é possível usar este modo de definição de variáveis. Este recurso é conhecido como Inferência de Tipos, ou Type Inference.

Listagem 2. Código utilizando var com um tipo de dados inferido pelo contexto


  function MainForm.retorna_inteiro: integer;
  begin
    result := 111;
  end;
   
  method MainForm.teste_de_metodo;
  begin
    var variavel_inteira := retorna_inteiro();
    variavel_inteira := variavel_inteira + 1;
    var mensagem := 'Olá mundo!';
  end;  ... 

Quer ler esse conteúdo completo? Tenha acesso completo