Qual programador Delphi que ao visitar um cliente não ouviu a seguinte frase: “Eu preciso de um sistema, mas eu tenho um sistema aqui que faz tal tarefa?”. Aí quando você vê é um sistema C#. E o cliente novamente pergunta: “Não dá pra arrumar não?”. Pois é, dessa forma vamos descrever aqui alguns conceitos interessantes de C# para quem programa em Delphi. E é claro que existe a possibilidade de estudo do Delphi para quem programa em C#.

Já sabendo como funciona a estrutura inicial de uma aplicação console, tanto em Visual Studio 2010 quanto em Delphi 2010, vamos escrever nosso primeiro código e entender como a mesma funcionalidade trabalhará nas duas diferentes ferramentas.

Nossa aplicação consistirá em uma solução onde o usuário informa um Nome e o sistema se apresenta ao usuário e declara boas vindas!

Visual Studio:

Insira o seguinte código em static void:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; 
namespace VisualConsole
{
    class Program
    {
        static void Main(string[] args)
        {         
            //insira seu código aqui
            Console.WriteLine("Qual o seu nome?");
            string Nome = Console.ReadLine();
            Console.WriteLine(""); 
            Console.WriteLine("Prazer em conhecê-lo " + Nome + "!");
            Console.WriteLine("Bem Vindo ao Visual Studio C#!");
        }
    }
}
 
Vá até o Menu Debug e clique em “Start Without Debug” e você terá seu primeiro Console em Visual Studio C#:



Figura 1 - Solução Console Application C#

Delphi:


program ProjDelphiConsole;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  Nome: string;
  Parar: string;


begin
  try
    { TODO -oUser -cConsole Main : Insert code here }
     Writeln('Qual o seu nome?');
     Readln(Nome);
     Writeln('');
     Writeln('Prazer em conhece-lo ' + Nome + '!');
     Writeln('Bem Vindo ao Delphi!');
     Writeln('');
     Readln(Parar);  //string usada para travar a tela do DOS

  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.





Figura 2 - Solução Console Application Delphi

Ponto 1: O comando Console.WriteLine do visual corresponde ao Writeln do Delphi. Esse comando realiza a tarefa de escrever um texto na tela de interface com o usuário.

Ponto 2: O comando Console.ReadLine() do Visual corresponde ao comando Readln do Delphi. Esse comando tem a tarefa de ler o dado que o usuário digitou por último.

Ponto 3: No Visual para escrever um texto (string) na tela usa-se aspas duplas (“”), já no Delphi utiliza-se aspas simples (‘’).

Ponto 4: No visual pode-se fazer a declaração da variável já na mesma linha que algum valor é atribuído a ela e no Delphi deve-se declarar a variável ou constante abaixo de uses.

Visual Studio:


string Nome = Console.ReadLine();
Delphi:

uses
  …

var
  Nome: string;

Begin
…
	Readln(Nome);
End

Nota: No Visual Studio se você compilar sem realizar Debug (Start Without Debug [Ctrl + F5]), o resultado da solução aparece na tela como DOS e ali permanece, entretanto, no Delphi mesmo que você compile sem Debug, a tela fechará, por isso criei a variável “Parar” que fica esperando você clicar em alguma tela para fechar a solução.

Obs.: caracteres com acento e cedilhas não funcionam em aplicações console do Delphi.

Um grande abraço para todos e até o próximo artigo!

Rafael Marins Ribeiro

Engenheiro de Softwares
rafael.marins.ribeiro@hotmail.com