Сучасні об’єктно-орієнтовані мови програмування та їхні короткі характеристики. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Сучасні об’єктно-орієнтовані мови програмування та їхні короткі характеристики.



Java — об'єктно-орієнтована мова програмування, випущена компанією Sun Microsystemsу 1995 році як основний компонент платформи Java. Синтаксис мови багато в чому походить від C та C++. У офіційній реалізації, Java програ-ми компілюються у байткод, який при виконанні інтерпретуєть-ся віртуальною машиною для конкретної платформи.

Sun Microsystems надає компілятор Java та віртуальну машину Java, які задовольняють специфікації Java Community Process, під ліцезією GNU General Public License.

Мова значно запозичила синтаксис із C і C++. Зокрема, взято за основу об'єктну модель С++, проте її модифіковано. Усунуто можливість появи деяких конфліктних ситуацій, що могли виникнути через помилки програміста та полегшено сам процес розробки об'єктно-орієнтованих програм. Ряд дій, які в С/C++ повинні здійснювати програмісти, доручено віртуальній машині. Передусім, Java розроблялась як платформо-незалежна мова, тому вона має менше низькорівневих можливостей для роботи з апаратним забезпеченням. За необхідності таких дій java дозволяє викликати підпрограми, написані іншими мовами програмування.

C# — об'єктно-орієнтована мова програмування з безпечною системою типізації для платформи.NET. РозробленаАндерсом Гейлсбергом, Скотом Вілтамутом та Пітером Гольде під егідою Microsoft Research (при фірмі Microsoft).

Синтаксис C# близький до С++ і Java. Мова має строгу статичну типізацію, підтримує поліморфізм, перевантаження операторів, вказівники на функції-члени класів, атрибути, події, властивості, винятки, коментарі у форматі XML. Перейнявши багато що від своїх попередників — мов С++,Delphi, Модула і Smalltalk — С#, спираючись на практику їхнього використання, виключає деякі моделі, що зарекомендували себе як проблематичні при розробці програмних систем: так, C# не підтримує множинне спадкування класів (на відміну від C++) або виведення типів (на відміну Haskell).

C++ — мова програмування високого рівня з підтримкою декількох парадигм програмування: об'єктно-орієнтованої, узагальненої та процедурної. Розроблена Б'ярном Страуструпом (англ. Bjarne Stroustrup) в AT&T Bell Laboratories (Мюррей-Хілл,Нью-Джерсі) у 1979 році та названа «Сі з класами». Страуструп перейменував мову у C++ у 1983 р. Базується на мові С.

При створенні С++ прагнули зберегти сумісність з мовою С. Більшість програм на С справно працюватимуть і з компілятором С++. С++ має синтаксис, заснований на синтаксисі С.

Нововведеннями С++ порівняно з С є:

§ підтримка об'єктно-орієнтованого програмування через класи;

§ підтримка узагальненого програмування через шаблони;

§ доповнення до стандартної бібліотеки;

§ додаткові типи даних;

§ обробка винятків;

§ простори імен;

§ вбудовані функції;

§ перевантаження операторів;

§ перевантаження імен функцій;

§ посилання і оператори управління вільно розподіленою пам'яттю.

Python (рекомендоване прочитання — «Па́йтон», запозичено назву з британського шоу Монті Пайтон) — інтерпретована об'єктно-орієнтованамова програмування високого рівня з динамічною семантикою. Розроблена в 1990 році Гвідо ван Россумом. Структури даних високого рівня разом із динамічною семантикою та динамічним зв'язуванням роблять її привабливою для швидкої розробки програм, а також як засіб поєднання існуючих компонентів. Пайтон підтримує модулі та пакети модулів, що сприяє модульності та повторному використанню коду. Інтерпретатор Пайтон та стандартні бібліотеки доступні як у скомпільованій так і у вихідній формі на всіх основних платформах. В мові програмування Пайтон підтримується декілька парадигм програмування, зокрема: об'єктно-орієнтована, процедурна, функціональна та аспектно-орієнтована

Delphi — це об'єктно-орієнтована мова програмування. яка є наступницею мови Object Pascal.

бібліотеки VCL та IDE повністю переведені на Юнікод, також з'явилися нові можливості компілятора (узагальнення (англ. Generics) і анонімні методи), в IDE було додано менеджер ресурсів та повністю перебудовано менеджер проектів. Найновіша, 16 версія, має назву Delphi XE2 і входить до Embarcadero RAD Studio XE2. У цій версії додано підтримку платформ Mac OS X таiOS а також 64-бітної архітектури.

Delphi в основному використовується для розробки настільних застосунків та корпоративних СКБД, проте цей інструмент можна використовувати для розробки будь-якого загального програмного забезпечення. Не залишена осторонь і можливість побудови веб-застосунків.

 

Поняття класу. Відмінності класу від об’єкту. Секції класу.

Клас-це структурованй тип данних. Об`єкт є змінною цього типу, тобто”Класу”.

Різниця між классом(1) і обєктом(2) очевидна оскільки (2) є зміною а (1) типом даних!

Класи Delphi налічують:

1.Поля-дані;

2.Методи-процедури і функції які оборбляють ці дані(поля);

3.Властивості – специфічне поєднання даних і х процедурою/функцією

Кожен із цих елементів має один із наступних рівнів доступу(секції класу):

-private;

-protected;

-public;

-published – поля які можна редагувати в Object Inspector при створенні інтерфейсі;

-protected – доступна нащадкам;

- аutomated – рані версії Delphi;

-strict;

Класи Делфі утворюють ієрархічну структур на вершині якої TObject;

 

Що таку інкапсулювання?

Класи – є структурованими типами даних, які програміст утворює самостійно, або використовує вже готові.

Класи в Delphi налічують:

1.поля-дані певних типів

2.методи-процедури та функції по обробці цих даних

3.властивості- специфічні поєднання даних з процедурою і/або функцією.

Об’єднання цих трьох методів називається інкапсуляцією.

Інкапсуляція – це створення захищених об’єктів, для яких доступ до властивостів і методів дозволений тільки через визначені розробником «точки входа». Тобто, інкапсуляція – це представлення розробнику конкретного набору властивостів та методів для управління поведінкою та властивостями об’єкту, які визначаються всередині класу.

Кожен з цих елементів має один із наступних рівнів доступу:

- Private – закрита частина классу

- Public – загальнодоступна частина класі

- Published – поля, які можна редагувати в Object Inspector при створенні інтерфейсу

- Protected – частина класу доступна нащадкам даного класу

- Automated – використовувався у ранніх версіях Delphi

- Strict – для посилання на область видимості

Класи Делфі утворюють ієрархію

 

Синтаксис оголошення класу в Delphi.

Класи – є структурованими типами даних, які програміст утворює самостійно, або використовує вже готові.

Класи в Delphi налічують:

1.поля-дані певних типів

2.методи-процедури та функції по обробці цих даних

3.властивості- специфічні поєднання даних з процедурою і/або функцією.

 

Type

……………………………

<тип класу>=class

Private

<ім’я властивості1>: <тип властивості1>; {опис властивостей класу, що мають область видимості Private}

…………………………

< ім’я властивостіN>: < тип властивостіN>;

<заголовок методу 1>;{опис методів класу, які мають область видимості Private}

……………………

<заголовок методу 1>;

Protected

<ім’я властивості1>: <тип властивості1>; {опис властивостей класу, що мають область видимості Protected}

…………………………

< ім’я властивостіN>: < тип властивостіN>;

<заголовок методу 1>;{опис методів класу, які мають область видимості Protected}

……………………………

<заголовок методу М>;

Public

<ім’я властивості1>: <тип властивості1>; {опис властивостей класу, що мають область видимості Public}

…………………………

< ім’я властивостіN>: < тип властивостіN>;

<заголовок методу 1>;{опис методів класу, які мають область видимості Public}

……………………………

<заголовок методу М>;

Published

…………………

{опис спеціальних властивостей классу (property), які мають область видимості Published}

End;

Опис класів розділений на дві частини – інтерфейсну та описову. В інтерфейсній частині знаходиться заголовок класу, в якому вказують назву класу, яка ідентифікує його в програмі, а також опис властивостів та заголовків методів. В описовій частині знаходиться програмний код (реалізація) методів, заголовки яких вказані в інтерфейсній частині опису класу.

 



Поделиться:


Последнее изменение этой страницы: 2016-08-14; просмотров: 2138; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.126.241 (0.02 с.)