Object Pascal: Porovnání verzí

Přidáno 3 683 bajtů ,  před 15 lety
Vzhledem k tomu, že původní článek byl pahýl, přeložil jsem namísto něj článek z en.
m (Robot: Automatické nahrazení textu (-{{Pahýl}} +{{softwarový pahýl}}))
(Vzhledem k tomu, že původní článek byl pahýl, přeložil jsem namísto něj článek z en.)
== Raná historie v Apple ==
'''Object Pascal''' je rozšíření [[programovací jazyk|programovacího jazyka]] [[Pascal]] o některé vlastnosti [[objektově orientované programování|objektově orientovaného programování]]. Toto rozšíření vytvořila firma [[Borland]] pro použití ve svém vývojovém nástroji Borland [[Delphi]]; proto se také označuje prostě jako „programovací jazyk Delphi“.
 
'''Object Pascal''' vytvořili v roce [[1985]] pro společnost [[Apple|Apple Computer]] [[Niklaus Wirth]] a [[Larry Tesler]] a rozšiřoval existující [[programovací jazyk]] [[Pascal (programovací jazyk)|Pascal]] o [[Objektově orientované programování|objektově orientovaný]] přístup.
Nevýhodou Object Pascalu je to, že nemá žádnou normu, a je to v podstatě proprietární [[programovací jazyk]] firmy [[Borland]].
 
Object Pascal vznikl za účelem vývoje [[MacApp]], aplikačního rozhraní pro [[Počítač|počítače]] [[Apple Macintosh|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ý projek dohlížel Larry Tesler.
Firma [[Borland]] použila Object Pascal jako [[programovací jazyk]] u svých produktů [[Turbo Pascal]] a [[Delphi]].
 
Společnost Apple přestala jazyk Object Pascal podporovat v roce [[1994]], kdy přešla z [[Motoroly]] [[68K]] na architekturu [[IBM]] [[PowerPC]].
Kromě Delphi jsou některé vlastnosti Object Pascalu podporovány i v některých dalších pascalských překladačích (obvykle z řad [[svobodný software|svobodného software]]), např. ve [[Free Pascal]]u.
 
== Léta Borlandu ==
{{softwarový pahýl}}
 
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 [[MS-DOS|DOS]]. Jazyk pojmenovala Object Pascal. Když Borland v roce [[1994]] přesunul svou pozornost od DOSu k [[Microsoft Windows|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 <tt>class</tt> namísto <tt>object</tt>, 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č|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:
 
* [http://www.vpascal.com/ 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.
* [http://www.winsoft.sk/pstudio.htm 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.
* [http://www.remobjects.com/page.asp?id={C5B896C5-5C61-4C1C-A617-136711C07F46} 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 ==
 
Delphi &ndash; průvodce jazykem Object Pascal pro Delphi:
 
*[http://info.borland.com/techpubs/delphi/delphi5/ Delphi 5 "Object Pascal Language Guide"]&nbsp;&nbsp;([ftp://ftp.borland.com/pub/delphi/techpubs/delphi5/oplg.zip PDF], [ftp://ftp.borland.com/pub/delphi/techpubs/delphi5/d5oplr.zip Windows Help])
*[ftp://ftpc.borland.com/pub/delphi/techpubs/delphi1/objlang.zip Delphi 1.0 Object Pascal Language Reference Guide]
*[http://community.borland.com/soapbox/techvoyage/article/1,1795,10280,00.html Object Pascal Style Guide]
 
[http://www.freepascal.org/ Free Pascal] &ndash; reference jazyka Object Pascal:
 
*[http://www.freepascal.org/docs/ref.pdf Aktuální verze Object Pascal Ref guide (PDF)]
*[http://www.freepascal.org/docs-html/ref/ref.html Aktuální verze Object Pascal Ref guide (html)]
*[http://www.freepascal.org/fpcmac.html Aktuální stav podpory rozšíření Mac Pascal]
 
[http://www.gnu-pascal.de GNU Pascal(GPC)]:
 
*[http://www.microbizz.nl/gpcdiffs.html GPC Rozdíly oproti Mac Pascalu]
 
[[Kategorie:Programovací jazyky]]
 
[[ar:&#1583;&#1604;&#1601;&#1610;]]
[[bgja:DelphiObject Pascal]]
[[danl:DelphiObject Pascal]]
[[depl:Object Pascal]]
[[en:Delphi programming language]]
[[es:Delphi]]
[[fr:Delphi]]
[[it:Delphi]]
[[ja:Delphi]]
[[nl:Programmeertaal Delphi]]
[[pl:Delphi]]
[[ru:Object Pascal]]
[[sv:Delphi (programspråk)]]
[[zh:Delphi&#32534;&#31243;&#35821;&#35328;]]
94

editací