Loading AI tools
З Вікіпедії, вільної енциклопедії
Object Pascal — об'єктно-орієнтована мова програмування, нащадок Pascal, більш знана як основна мова програмування середовища Delphi.
Object Pascal | |
---|---|
![]() | |
Парадигма | імперативна, структурна, об'єктно-орієнтована |
Дата появи | 1986 |
Творці | Ніклаус Вірт, Андерс Гейлсберг |
Розробник | Larry Teslerd і Ніклаус Вірт |
Система типізації | статична і динамічна , строга, безпечна |
Основні реалізації | Delphi (x86 та CLI), Oxygene (CLI), Free Pascal (x86, x86-64, PowerPC, ppc64, Sparc та ARM), Virtual Pascal (x86), TMT Pascal (x86), Turbo51 (Intel 8051) |
Діалекти | Apple, Turbo Pascal, objfpc, Delphi, Delphi.NET, Oxygene |
Під впливом від | Pascal, Smalltalk |
Вплинула на | C#, Java |
Звичайні розширення файлів | .p , .pp або .pas |
В 1986 році фірма Apple розробила об'єктне розширення мови програмування Pascal, яке стали називати Object Pascal[джерело?]. В 1989 році компанія Borland внесла аналогічні зміни в систему Turbo Pascal 5.5, мова якої відтоді стала об'єктно-орієнтованою. Із часом, до мови програмування Turbo Pascal вносили нові зміни, що розширювали її об'єктно-орієнтовані можливості. В 1995 році було випущено інтегроване середовище розробки Borland Delphi 1.0, мовою програмування якої був Object Pascal (на основі Turbo Pascal). Назва Object Pascal застосовувалась і в наступних версіях Borland Delphi. Проте з часом сторонні розробники почали застосовувати таку назву для власних версій Pascal. 2001 року, із випуском Delphi 6.0, компанія Borland відмовилася від назви Object Pascal і назвала мову програмування, що застосована в Borland Delphi, мовою програмування Delphi.
Є багато компіляторів, більш чи менш сумісних з Delphi Object Pascal. Вони дозволяють будувати програми на Object Pascal для різноманітних платформ та підпадають під різні ліцензії. Компілятори, що заявлені як Object Pascal-сумісні, дуже часто намагаються бути сумісними із вихідними кодами Delphi.
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.
program ObjectPascalExample;
type
PHelloWorld = ^THelloWorld;
THelloWorld = object
procedure Put;
end;
var
HelloWorld: PHelloWorld; { це вказівник на THelloWorld }
procedure THelloWorld.Put;
begin
WriteLn('Hello, World!');
end;
begin
New(HelloWorld);
HelloWorld^.Put;
Dispose(HelloWorld);
end.
program ObjectPascalExample;
type
THelloWorld = class
procedure Put;
end;
procedure THelloWorld.Put;
begin
Writeln('Hello, World!');
end;
var
HelloWorld: THelloWorld; { це неявний вказівник }
begin
HelloWorld := THelloWorld.Create; { конструктор повертає вказівник }
HelloWorld.Put;
HelloWorld.Free; { розіменування вказівника}
end.
namespace ObjectPascalExample;
interface
type
ConsoleApp = class
class method Main
end;
THelloWorld = class
method Put;
end;
implementation
method THelloWorld.Put;
begin
Console.WriteLine('Hello, World!');
end;
class method ConsoleApp.Main;
begin
var HelloWorld := new THelloWorld;
HelloWorld.Put;
end;
end.
Додаткові службові слова для підтримки об'єктно-орієнтованого програмування:
object
class
public
virtual
constructor
destructor
![]() |
Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.