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

Матеріал з Довідник дослідника програм
Високорівнева мова програмування відрізняється від низькорівневого тим, що для програміста він простіший і зручніший. Мова програмування високого рівня містить смислові конструкції і команди, які представляють із себе стандартні структури з декількох простих (низькорівневих, машинних) команд, таким чином програміст звільняється від необхідності писати кожну машинну команду окремо, тобто скорочується час роботи програміста для написання певного функціоналу, також скорочується розмір текстового файлу містить вихідний код алгоритму програми, команди виглядають більш людино зрозумілими і можуть об'єднуватися в структури (блоки коду з декількох команд), все це сприяє можливості "тримати в голові" весь алгоритм програми, працювати з невеликими і зрозумілими областями коду замість величезних листів утомливих машинних кодів. які включає мову програмування низького рівня.
Що таке взагалі високий або низький рівень?
Багато плутаються з рівнями мов. Здається що, так як асемблер складніший для розуміння і вимагає від програміста більш високого рівня підготовки, така мова можна назвати високорівневим, але це не так.
Насправді рівні вказують на ступінь отвязанность мови від впливу з апаратурою, простіше уявити собі, наприклад, корабель: у машинному відділення (на найнижчому рівні корабля) робочий безпосередньо взаємодіє з механізмами, підкидає вугілля в топку і стежить за всіма показниками датчиків тиску. У той же час, капітан, що знаходиться на поверсі вище (більш високий рівень) задає лише накази "повний вперед", "повний назад", "вправо", "вліво". Капітану не потрібно працювати з вугіллям і стежити за тиском в паровому котлі, він відповідає за те куди і на якій швидкості корабель рухається. Якщо брати ще більш високий рівень, то на палубу вище знаходяться пасажири, саме вони купивши квиток віддають тим самим наказ кораблю "плисти в Москву", при цьому їм не треба навіть замислюватися як корабель функціонує. Той же самий принцип лежить і в мовах програмування, чим нижче рівень, тим ближче програміст оперує з апаратурою, чим вище, тим більше програміст оперує з абстрактними поняттями і більш глобальними завданнями.
Мова програмування високого рівня, віддаляючись від роботи з апаратурою, отримує більш широкі можливості по платформ. тобто, програма легше буде переноситься, наприклад між Windows і Unix системами.
Мови високого рівня
Крім того, мови діляться ще на інтерпретовані і компільовані:
- Компільовані: C, C ++, Паскаль, Delphi
- Інтерпретовані: Visual Basic, Java, Python, PHP, Ruby, Perl
Компільовані мови видають в результаті виконуваний модуль. наприклад EXE файл, він виходить з вихідного коду програми шляхом компіляції, тобто вихідний код на мові високого рівня автоматично обробляється компілятором і перекладається в машинний код. який (разом з даними) і записується всередину виконуваного файлу.
Інтерпретована мова не оформлюється в виконуваний файл, він завжди залишається у вигляді вихідного коду, в даному випадку вихідний код отримує назву скрипт. Скрипт послідовно виконується (команда за командою) на віртуальній машині самої мови програмування. Таким чином, для виконання програми, на комп'ютері повинна перебувати відповідна віртуальна машина. яка виконає даний скрипт. Природно, це негативно впливає на швидкодію програми, але зате сам скрипт стає кросплатформним.