| Object Pascal | |
|---|---|
| Парадигма | імперативна,структурна,об'єктно-орієнтована |
| Дата появи | 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.
asm, написані простим JavaScript, але мають доступ до символів Pascal, абозовнішні класи, які безпосередньо відображаються на прототипні класи JavaScript. Smart Pascal вводить справжнє успадкування, класи, часткові класи, інтерфейси,таблицю віртуальних методів та багато інших розширених конструкцій, які типово не є частиною JavaScript.Є багатокомпіляторів, більш чи менш сумісних з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]
programObjectPascalExample;typeTHelloWorld=objectprocedurePut;end;varHelloWorld:THelloWorld;procedureTHelloWorld.Put;beginWriteLn('Hello, World!');end;beginNew(HelloWorld);HelloWorld.Put;Dispose(HelloWorld);end.
programObjectPascalExample;typePHelloWorld=^THelloWorld;THelloWorld=objectprocedurePut;end;varHelloWorld:PHelloWorld;{ це вказівник на THelloWorld }procedureTHelloWorld.Put;beginWriteLn('Hello, World!');end;beginNew(HelloWorld);HelloWorld^.Put;Dispose(HelloWorld);end.
programObjectPascalExample;typeTHelloWorld=classprocedurePut;end;procedureTHelloWorld.Put;beginWriteln('Hello, World!');end;varHelloWorld:THelloWorld;{ це неявний вказівник }beginHelloWorld:=THelloWorld.Create;{ конструктор повертає вказівник }HelloWorld.Put;HelloWorld.Free;{ розіменування вказівника}end.
namespaceObjectPascalExample;interfacetypeConsoleApp=classclassmethodMainend;THelloWorld=classmethodPut;end;implementationmethodTHelloWorld.Put;beginConsole.WriteLine('Hello, World!');end;classmethodConsoleApp.Main;beginvarHelloWorld:=newTHelloWorld;HelloWorld.Put;end;end.
Додаткові службові слова для підтримки об'єктно-орієнтованого програмування:
objectclasspublicvirtualconstructordestructor
| Це незавершена стаття промови програмування. Ви можетедопомогти проєкту,виправивши або дописавши її. |