Перейти до вмісту

Object Pascal

Матеріал з Вікіпедії — вільної енциклопедії.
Object Pascal
Delphi's-like logo
Парадигмаімперативна, структурна, об'єктно-орієнтована
Дата появи1986 Редагувати інформацію у Вікіданих
ТворціНіклаус Вірт, Андерс Гейлсберг
РозробникLarry Teslerd, Ніклаус Вірт, Apple Inc. і Borland Редагувати інформацію у Вікіданих
Система типізаціїстатична і динамічна , строга, безпечна
Основні реалізації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 Редагувати інформацію у Вікіданих

Object Pascal — об'єктно-орієнтована мова програмування, нащадок Pascal, більш знана як основна мова програмування середовища Delphi.

Історія назви

[ред. | ред. код]

У вересні 1986 року фірма Apple випустила об'єктне розширення мови програмування Pascal, яке стали називати Object Pascal[1]. 1989 року компанія Borland внесла аналогічні зміни в систему Turbo Pascal 5.5, мова якої відтоді стала об'єктно-орієнтованою. Із часом, до мови програмування Turbo Pascal вносили нові зміни, що розширювали її об'єктно-орієнтовані можливості. В 1995 році було випущено інтегроване середовище розробки Borland Delphi 1.0, мовою програмування якої був Object Pascal (на основі Turbo Pascal).[2] Назва Object Pascal застосовувалась і в наступних версіях Borland Delphi. Проте з часом сторонні розробники почали застосовувати таку назву для власних версій Pascal. 2001 року, із випуском Delphi 6.0, компанія Borland відмовилася від назви Object Pascal і назвала мову програмування, що застосована в Borland Delphi, мовою програмування Delphi.

Версії

[ред. | ред. код]

Компілятори

[ред. | ред. код]

Є багато компіляторів, більш чи менш сумісних з Delphi Object Pascal. Вони дозволяють будувати програми на Object Pascal для різноманітних платформ та підпадають під різні ліцензії. Компілятори, що заявлені як Object Pascal-сумісні, дуже часто намагаються бути сумісними із вихідними кодами Delphi.

Інтерпретатори

[ред. | ред. код]

Pascal Script (раніше InnerFuse) та DWScript (Delphi Web Script) — це інтерпретатори та скриптові механізми з відкритим кодом для Object Pascal, написані на Delphi. Вони підтримують підмножини Object Pascal. DWScript також може компілювати код Object Pascal у код JavaScript (Smart Pascal) та підтримує JIT-компіляцію. Modern Pascal надає 3 різні інтерпретатори: інтерфейс командного рядка (CLI), модуль Apache (Celerity) та CodeRunner (рішення, подібне до node.js, здатне обробляти різні скрипти для кожного порту), окрім можливості компілювати та захищати сирцевий код скрипту.[11]

Приклади програми «Hello, world!»

[ред. | ред. код]

Object Pascal (Apple)

[ред. | ред. код]
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. 

Object Pascal (Turbo Pascal)

[ред. | ред. код]
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. 

Object Pascal (Delphi та Free Pascal)

[ред. | ред. код]
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. 

Object Pascal (Oxygene)

[ред. | ред. код]
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 

Див. також

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. hoakley (19 липня 2025). A brief history of primary coding languages. The Eclectic Light Company (англ.). Процитовано 9 вересня 2025.
  2. Intersimone, David (14 лютого 2025). Celebrating the 30th Anniversary of Delphi Version 1.0’s Launch (амер.). Процитовано 10 вересня 2025.
  3. Community Letter: Embarcadero Technologies agrees to acquire CodeGear from Borland [Архівовано 2018-03-02 у Wayback Machine.].
  4. iPhone/iPod development. Free Pascal development team. Архів оригіналу за 28 квітня 2009. Процитовано 13 квітня 2009.
  5. A Smart Book. Leanpub. 18 травня 2012. Архів оригіналу за 25 травня 2013. Процитовано 19 червня 2013.
  6. Funa, Igor (2021). Turbo51: Turbo Pascal Compiler for 8051 microcontrollers. Архів оригіналу за 25 вересня 2018.
  7. Draxler, Wolfgang. WDSibyl: Visual Development Environment. Архів оригіналу за 12 лютого 2020.
  8. EDM/2: WDSibyl. Архів оригіналу за 24 березня 2021.
  9. EDM/2: List of Tools. Архів оригіналу за 21 серпня 2022.
  10. eCSoft/2: The Complete OS/2 Software Encyclopedia: WDSibyl. Архів оригіналу за 17 жовтня 2021.
  11. Modern Pascal. Архів оригіналу за 11 грудня 2018. Процитовано 22 жовтня 2018.

Джерела

[ред. | ред. код]
  • Глинський Я. М. Інформатика — алгоритмізація і програмування. — Львів, 2005.

Посилання

[ред. | ред. код]
  • Embarcadero Delphi. Архів оригіналу за 25 червня 2013. Процитовано 8 червня 2012. (англ.)
  • FAQ по Delphi. Архів оригіналу за 25 червня 2013. Процитовано 25 серпня 2009. (рос.)