Ir para o conteúdo

Delphi - Noções básicas

Importante: O presente tutorial precisa de ser expandido, pois está muito incompleto.

Delphi é uma linguagem derivada da linguagem estruturada Pascal. É também conhecida geralmente por Object Pascal pois pode-se dizer que é a versão do Pascal que é orientada aos objectos, e que possibilita a implementação gráfica de aplicações (uso de GUI). Contudo, as grandes bases do Delphi são exactamente iguais às do Pascal — a única diferença reside nas bibliotecas extra existentes, como a sysutils, que permite criar classes (um dos conceitos OOP), por exemplo.

Hoje em dia, o Pascal evoluiu segundo o Delphi, existindo já IDEs que suportam ao mesmo tempo Pascal e Delphi, tanto que, quando se tomam conhecimentos nas duas linguagens, podemos estar a programar a pensar que é em Pascal e no final acabámos por aplicar princípios de Delphi.

Para se iniciar em Delphi, em suma, será crucial tocar no Pascal. Por isso, sugere-se a leitura de um Tutorial de Pascal para se entender antes de mais a estruturação da linguagem.

Exemplo de Programa em Object Pascal

O presente programa, não comentado, recorre a um princípio muito básico do OOP: as classes.

program exemplo_object_pascal;
uses crt, sysutils;

type tipo_oper = class
               function soma(a,b:real):real;
               function subtraccao(a,b:real):real;
               function multiplicacao(a,b:real):real;
               function divisao(a,b:real):real;
     end;

var operacoes : tipo_oper;
    valor1, valor2 : real;

function tipo_oper.soma(a,b:real):real;
begin
     soma := a+b;
end;

function tipo_oper.subtraccao(a,b:real):real;
begin
     subtraccao := a-b;
end;

function tipo_oper.multiplicacao(a,b:real):real;
begin
     multiplicacao := a*b;
end;

function tipo_oper.divisao(a,b:real):real;
begin
     if not (b=0) then divisao := a/b
     else begin
          write('Erro! ');
          divisao := 0;
     end;
end;

begin (* MAIN *)
     operacoes.create();
     write('Valor 1: '); readln(valor1);
     write('Valor 2: '); readln(valor2);
     writeln;
     with operacoes do begin
          writeln('Soma: ',soma(valor1,valor2):0:3);
          writeln('Subtraccao: ',subtraccao(valor1,valor2):0:3);
          writeln('Multiplicacao: ',multiplicacao(valor1,valor2):0:3);
          writeln('Divisao: ',divisao(valor1,valor2):0:3);
     end;
     readkey;
end.