Сучасна мова програмування високого рівня: приклади і порівняння

Написання більшості сучасних комп`ютерних програм здійснюється при залученні мов високого рівня. Примітно, що багато хто з них були розроблені ще в 60 і 70-х роках, але актуальні й досі. Які ще факти про високорівневих мовах ми можемо відзначити? Які найпоширеніші різновиди відповідних рішень?

Мова програмування високого рівня

Сутність високорівневих мов написання програм

Мова програмування високого рівня - інструмент, що відноситься до категорії машинно-незалежних. Що це означає? Справа в тому, що мови програмування діляться на кілька категорій.

Є машинний код: набір алгоритмів, що призначені для управління користувачем безпосередньо апаратними елементами комп`ютера. Їх сутність буде повністю машинно-залежною: для конкретних типів ПК підійдуть тільки певні алгоритми.

Першою мовою програмування високого рівня створеним для

Є мови асемблера. По суті справи, вони є надбудовою над тими, що призначені для низькорівневого управління апаратними компонентами ПК за допомогою машинного коду. Але за багатьма ознаками мови асемблера також прийнято відносити до машинно-залежним. Як правило, вони адаптовані до конкретного різновиду апаратного компонента ПК. Їх основне завдання - спростити користувачеві управління комп`ютером за допомогою відповідних низькорівневих комунікацій.

У свою чергу, мова програмування високого рівня дозволяє здійснювати користувачеві взаємодія з ПК незалежно від того, яке конкретно обладнання встановлено на комп`ютері. Тому його слід відносити до машинно-незалежним. При написанні операційних систем найчастіше задіюється мову програмування високого рівня. Але є ОС, що написані на асемблері. Мови програмування низького і високого рівня можуть використовуватися одночасно. Людина, віддаючи ПК високорівневі команди, повинен, так чи інакше, доносити їх до конкретних апаратних компонентів, і ця функція може бути реалізована при використанні мов асемблера одночасно з високорівневими, що задіяні в структурі операційної системи.

Мова програмування високого рівня транслятори

транслятори

Найважливіші елементи, що входять в мови програмування високого рівня, - транслятори. Їх функція може бути різною. У числі ключових областей застосування трансляторів - «переклад» команд, які формуються на мові програмування високого рівня, в машинний код, зрозумілий конкретному апаратному компоненту ПК, наприклад, процесору. Транслятори, що виконують цю функцію, називаються також компиляторами. Є інший різновид відповідних компонентів - інтерпретатори. Вони призначені, в свою чергу, для «перекладу» високорівневих команд в ті, що зрозумілі операційній системі або будь-якій програмі.

Класифікація високорівневих мов

Високорівневі мови програмування можуть бути класифіковані за різними підставами. Поширена схема, по якій вони діляться на наступні основні різновиди:

- процедурно-орієнтовані (задіюються в якості інструменту при обробці інформації на будь-якому етапі обчислень);

- проблемно-орієнтовані (використовуються як засіб вирішення галузевих і прикладних задач, що формуються при розширенні сфер застосування ПК);

- об`єктно-орієнтовані (можуть бути окремими випадками мов перших двох типів, однак, адаптуються до користування широким колом розробників з різним рівнем підготовки, наприклад, у вигляді рішення з візуальним інтерфейсом).

Розглянемо тепер деякі історичні та сучасні мови програмування високого рівня, відповідні даній класифікації.

Сучасні мови програмування високого рівня

Процедурно-орієнтовані мови

До таких можна віднести Фортран. Він вважається першим мовою програмування високого рівня, створеним для широкого застосування. Характеризується простою структурою. До процедурно-орієнтованим мовам також відноситься Бейсік. Вважається одним з найбільш часто використовуваних при навчанні програмуванню. Приклад іншого процедурно-орієнтованої мови - СІ. Спочатку він створювався для ОС UNIX. На його основі згодом була створена мова C ++, доповнений інструментами об`єктно-орієнтованого програмування. Ще одна мова, що відноситься до даної категорії - Паскаль. Часто також задіюється при навчанні програмуванню. Можливості даного мови дозволяють його використовувати як дуже потужний інструмент розробки професійних видів ПО.

Проблемно-орієнтовані мови

До таких можна віднести Лисп, Пролог. Перша мова був розроблений в 1962 році - через кілька років після створення Фортрана. Розглядається, таким чином, як другий в історії. Активно задіяли як інструмент роботи програмістів зі рядками символів. На практиці Лисп використовувався в системах, що класифікуються як експертні, а також ті, що призначалися для аналітичних обчислень. Пролог знайшов широке застосування в області логічного програмування. На практиці найчастіше задіюється в управлінні алгоритмами штучного інтелекту в відповідних системах.

Об`єктно-орієнтовані мови



Вивчимо тепер приклади мов програмування високого рівня, які відносяться до категорії об`єктно-орієнтованих. У числі таких - Visual Basic, Delphi, Visual Fortran, зазначений вище C ++, а також Prolog ++. Фактично всі вони в своїй основі містять процедурно-орієнтовані мови. Однак передбачається істотне їх доповнення візуальними елементами управління з метою подальшого освоєння необхідних алгоритмів розробниками, звиклими до інших інструментів. Так, перша мова програмування високого рівня - Фортран - може бути в оперативні терміни вивчений IT-фахівцями за допомогою можливостей Visual Fortran. Аналогічним методом можна швидко освоїти Бейсік або Пролог.

Мови програмування високого рівня Pascal

Здійснюється, в свою чергу, при використанні Delphi програмування на мові високого рівня Object Pascal. Існує велика кількість інших середовищ розробки ПЗ, що класифікуються як об`єктно-орієнтована мова. Дана сфера технологій розробки ПЗ активно розвивається.

Фортран і Лісп - перший і другий високорівневі мови

Вивчимо докладніше то, як з`явився перший мову програмування високого рівня - Фортран, а також Лисп, який вважається другою. У 1954 році розробники з компанії IBM, очолювані Джоном Бекуса, створили мову, за допомогою якого програмісти отримали можливість значно полегшити взаємодію з ПК, яке до того моменту здійснювалося за допомогою машинних команд або асемблера. Він отримав назву Fortran і незабаром став відомий і в СРСР під русифікованим найменуванням. Фортран став популярним інструментом для наукових обчислень.

Основним революційним елементом, запропонованим фахівцями IBM спільноті, став, власне, той самий компілятор, покликаний бути альтернативою асемблеру. У перші роки практики написання програм при використанні Фортран багато розробників вважали компілятор не зовсім вдалим рішенням, перш за все, з точки зору трудовитрат. Багато машинні коди, дійсно, складалися простіше, ніж при залученні транслятора. Однак у міру стрімкого збільшення продуктивності комп`ютерів програмісти починали усвідомлювати, що без використання компілятора ефективне ПО, яке буде повністю задіяти обчислювальні потужності ПК, створювати вкрай проблематично. Так, починання розробників з IBM отримали подальший розвиток. Основні синтаксичні конструкції мови програмування високого рівня Фортран у багатьох випадках стали задейстоваться в якості базових при створенні нових рішень.

Прикладом досягнення практичних результатів в області розвитку концепцій, закладених в Фортран, можна вважати створення Лісп. Дана мова був розроблений в 1958 році, однак, широку популярність він придбав кілька пізніше - в 1960-м. Лісп був розроблений Джоном Маккарті і опублікований в одному з популярних журналів для IT-фахівців. Основне призначення даного мови - обробка списків. Лисп став популярний в середовищі розробників систем штучного інтелекту. На його основі були створені такі мови, як Planner, Scheme, а також Common Lisp. Також Лисп справив значний вплив на багато сучасні інструменти розробки ПО. Структура мов програмування високого рівня, популярних сьогодні, в значній мірі базується на алгоритмах Фортран і Лісп.

Цікаво буде, однак, розглянути інші підходи до класифікації розглянутих інструментів розробки засобів ПО.

Універсальні високорівневі мови

Так, сучасні експерти виділяють універсальні високорівневі мови. До них відносяться, зокрема, ті, що були розроблені в 60-і роки. Ключові їх характеристики:

- орієнтація на широкий спектр завдань (насамперед, відносяться до обчислювальних);



- велика кількість мовних конструкцій та алгоритмів;

- значимість не тільки для свого часу, але і для сучасного етапу розвитку комп`ютерної техніки;

- підтримка у відповідних мовах імперативної методології.

Delphi програмування на мові високого рівня

Універсальні мови - основоположні у відповідній галузі IT-розробки. Можна відзначити, що до цих пір вони не мають прямих аналогів в частині внутрішньої структури. Власне, це багато в чому пояснює актуальність задіяння відповідних мов в сучасних об`єктно орієнтованих інтерфейсів. Також загальне в зазначених мовах - тип даних. Цей фактор в значній мірі визначає їх універсальність. У числі найбільш примітних властивостей мов, що відносяться до категорії універсальних - спадкоємність. Так, історично більш пізні мови, як правило, базувалися на концепціях попередників.

унікальні мови

Деякі IT-експерти виділяють в самостійну категорію «унікальні мови». У числі таких: APL, Cobol, Forth, SETL, а також CLU. Яка їхня специфіка?

Найважливіший аспект APL - задіяння масивів (векторів і матриць) в якості ключового структурного типу. Специфіка мови Cobol - в орієнтованості на комерційну сферу. Так, його доцільно задіяти при вирішенні завдань, пов`язаних зі стандартизованим форматом представлення результатів. Мова Forth характеризується використанням постфіксной записи програм, а також залученням стековой нотації. У мові SETL застосовуються сукупності значень в якості одного з ключових типів даних. Мовою програмування високого рівня є також CLU. Його основна особливість - залучення концепції роботи з абстрактними типами даних. Багато IT-фахівці бачать логічним поява нових рішень, що базуються на унікальних мовами - таких як, наприклад, Object-Oriented Cobol.

Основні синтаксичні конструкції мови програмування високого рівня

Засоби паралельного програмування

Дана категорія може включати величезна кількість рішень. У свою чергу, мови паралельного програмування можуть мати велику кількість підстав для класифікації. Наприклад, метод організації процесів. Дане підставу передбачає класифікацію засобів паралельного програмування виходячи з наявності в них:

- співпрограми;

- розгалужень;

- об`єднань;

- паралельних дужок;

- алгоритмів роботи з процесами.

Інша підстава для класифікації мов розглянутого типу - методи синхронізації процесів. Відповідні рішення можуть, таким чином, включати:

- семафори;

- монітори;

- «Рандеву»;

- критичні ділянки;

- дистанційний виклик процедур;

- транзакції, які належать до категорії атомарних.

До мов розглянутого типу відносяться Modula-2, BLISS, Concurrent Pascal, DP, Argus.

Сімейство мов C

Вище ми розглянули як приклад мови високорівневого програмування таке рішення, як C. По суті справи, воно формує ціле сімейство. Мови, що належать до нього, є приватними конструкціями C. Так, його доповнення різними об`єктно-орієнтованими компонентами призвело до розробки C ++. Після суттєвої фільтрації ряду конструкцій C з`явилася мова Java. Можна відзначити, що Java створювався багато в чому під впливом концепцій проекту Oberon, яким керує Ніклаус Вірт, творець мови Паскаль. Чи відноситься до високорівневих javascript? Безумовно, так, не дивлячись на вузькість застосування - в якості інструменту розробки веб-сторінок. Але до мов програмування високого рівня не належать, зокрема, HTML, XML і SGML. Вони класифікуються як інструменти розмітки гіпертексту.

Сімейство мов Pascal

Мови програмування високого рівня Pascal також утворюють окреме сімейство. На базі Паскаль був, власне, створений Oberon, що класифікується як мову об`єктно-орієнтованого типу. Ключова особливість Oberon - в можливості забезпечення безпеки типів. Крім Oberon, до мов сімейства Pascal можна віднести Modula-2, а також Component Pascal.

Сімейство мов Ada

Основоположний у відповідній категорії мов - замовлений під потреби Міністерства оборони США Ada. Він був створений в кінці 70-х - початку 80-х років. Характеризується великою кількістю функцій, можливостей, універсальністю. Сімейство мов Ada включає такі рішення, як Cedar, Modula 3.

Сімейство мов Simula

Мова Simula поширений в галузях програмування, пов`язаних з імітаційним моделюванням. Специфіка відповідних рішень - в залученні специфічного ядра. Його використання дозволяє застосовувати різні розширення, адаптовані до тих чи інших сфер застосування. На основі Simula були створені об`єктно-орієнтована мова Smalltalk, а також BETA, що характеризується здатністю комбінувати в рамках єдиної абстракції алгоритми, що відображають роботу з даними, процедурами, а також управління. Об`єкти BETA можуть розглядатися в різному контексті, наприклад, в якості змінних, функцій або паралельних систем.



Увага, тільки СЬОГОДНІ!

Увага, тільки СЬОГОДНІ!