The English encyclopedia Allmultimedia.org will be launched in two phases.
The final launch of the Allmultimedia.org will take place on February 24, 2026
(shortly after the 2026 Winter Olympics).

Object Pascal

Z Multimediaexpo.cz

Object Pascal je rozšíření programovacího jazyka Pascal o některé vlastnosti objektově orientovaného programování.

Obsah

Raná historie v Apple

Object Pascal vytvořili v roce 1985 pro společnost Apple Computer Niklaus Wirth a Larry Tesler a rozšiřoval existující programovací jazyk Pascal o objektově orientovaný přístup.

Object Pascal vznikl za účelem vývoje MacApp, aplikačního rozhraní pro počítače Macintosh (dnes bychom spíš řekli knihovny tříd). Rozšíření v Object Pascalu i MacApp samotný vyvinuli Barry Hanes, Ken Doyle a Larry Rosenstein, testoval je Dan Allen. Na celý projekt dohlížel Larry Tesler.

Společnost Apple přestala jazyk Object Pascal podporovat v roce 1994, kdy přešla z Motoroly 68K na architekturu IBM PowerPC.

Léta Borlandu

V roce 1986 zavedla společnost Borland obdobná rozšíření do svého produktu Turbo Pascal pro počítače Macintosh a v roce 1989 také do Turbo Pascalu 5.5 pro DOS. Jazyk pojmenovala Object Pascal. Když Borland v roce 1994 přesunul svou pozornost od DOSu k Windows, přejmenoval Turbo Pascal na Delphi a uvedl řadu nových rozšíření taktéž s označením Object Pascal. Zrušil však zpětnou kompatibilitu použitím klíčového slova class namísto object, konstruktoru Create a virtuálního destruktoru Destroy, vlastností, ukazatelů na metody a několika dalších věcí.

Open source překladače s podporou Apple

V současné době (2005) se jak Free Pascal, tak GNU Pascal snaží zachovat kompatibilitu s Mac Pascalem. Free Pascal umožňuje do určité míry kombinaci objektů v Delphi módu s objekty v Apple Pascalu.

Překladače

Vedle již zmíněných překladačů Delphi, Free Pascal a GNU Pascal je zde několik dalších, povětšinou klony Delphi, implementující části Object Pascalu, buď v dialektu Applu nebo Borlandu:

  • Virtual Pascal (dialekt Delphi) - jednoduchý Turbo Pascal a Delphi 2 kompatibilní překladač, s podporou pro OS/2, Windows, DOS a částečně Linux. V současné době je vývoj ukončen.
  • Pocket Studio (dialekt Delphi) - překladač/RAD, zaměřený na ARM/Palm s několika vlastními rozšířeními. Současný stav vývoje není známý, nicméně stále je v prodeji.
  • Chrome - je zásuvný modul pro Visual Studio a nativní .NET/Mono překladač pro příkazový řádek. Zaměřuje se na platformu .NET či Mono a z uvedených překladačů je nejnovější.

Ukázka kódu

Apple Object Pascal

program ObjectPascalExample;

type
  THelloWorld = object
    procedure Put;
  end;

var
  HelloWorld: THelloWorld;

procedure THelloWorld.Put;
begin
  WriteLn('Hello, World!');
end;

begin
  New(HelloWorld);
  HelloWorld.Put;
  Dispose(HelloWorld);
end.

Turbo Pascalovský Object Pascal

program ObjectPascalExample;

type
  PHelloWorld = ^THelloWorld;
  THelloWorld = object
    procedure Put;
  end;

var
  HelloWorld: PHelloWorld;

procedure THelloWorld.Put;
begin
  WriteLn('Hello, World!');
end;

begin
  New(HelloWorld);
  HelloWorld^.Put;
  Dispose(HelloWorld);
end.

Delphi Object Pascal

program ObjectPascalExample;

type
  THelloWorld = class
    procedure Put;
  end;

var
  HelloWorld: THelloWorld;

procedure THelloWorld.Put;
begin
  WriteLn('Hello, World!');
end;

begin
  HelloWorld := THelloWorld.Create;
  HelloWorld.Put;
  HelloWorld.Free;
end.

Externí odkazy