цедурою або функцією (декомпозиція задачі). При цьому проектування програми йде за принципом зверху вниз: спочатку визначаються необхідні для вирішення програми модулі, їх входи і виходи, а потім вже ці модулі розробляються. Такий підхід разом з локальними іменами змінних дозволяє розробляти проект силами великого числа програмістів.
Табл. 1 - Основні мови програмування
ЯзикОсновное іспользованіеОпісаніеАдаВ оборонеВисокого уровняАссемблерРаботи, що вимагають детального контролю за апаратним забезпеченням, швидкого виконання і програм малого размераБистрий і ефективний, але вимагає певних зусиль і навиковБейсікВ освіті, бізнесі, домаПрост в ізученііССістемное програмування, універсальне программірованіеБистрий і ефективний, широко використовується як універсальний язикС ++ В об'єктно-орієнтованому программірованііОснован на мові СКоболПрограммірованіе в бізнесеЖестко орієнтований на комерційні завдання, легко навчитися, але дуже багато операторовФортУправленіе пріложеніяміІспользует инверсную польську запісьФортранНаучная робота і вичісленіяОснован на математичних формулахМодула - 2Сістемное програмування та програмування в режимі реального часу, універсальне программірованіеВисоко структурований, призначений замінити Паскаль для додатків реального світу ОберонУніверсальное программірованіеКомпактний мову, що з'єднує багато рис Паскаля і Модула - 2ПаскальУніверсальний язикВисоко структурірованПрологІскусственний інтеллектСімвольно-логічна система програмування, на початку призначена вирішення теорем, але зараз використовується частіше для вирішення завдань, пов'язаних зі штучним інтелектом
. Розвиток мов програмування
У п'ятдесяті роки двадцятого століття з появою комп'ютерів на електронних лампах почався бурхливий розвиток мов програмування. Комп'ютери, сто?? вшіе в той час значно дорожче, ніж розробка будь-якої програми, вимагали високоефективного коду. Такий код розроблявся вручну мовою Асемблер.
. 1 Перший етап розвитку
Перші ЕОМ, створені людиною, мали невеликий набір команд і вбудованих типів даних, але дозволяли виконувати програми на машинній мові. Машинна мова (МЯ) - єдиний мову, зрозумілу ЕОМ. Він реалізується апаратно: кожну команду виконує деякий електронний пристрій. Програма на МЯ являє собою послідовність команд і даних, заданих у цифровому вигляді.
Цей етап у розвитку мов програмування показав, що програмування є складною проблемою, важко піддається автоматизації, але саме програмне забезпечення визначає в кінцевому рахунку ефективність застосування ЕОМ. Тому на всіх наступних етапах зусилля спрямовувалися на вдосконалення інтерфейсу між програмістом і ЕОМ - мови програмування.
Прагнення програмістів оперувати не цифри, а символами, призвело до створення мнемонічного мови програмування, який називають асемблером. Ця мова має певний синтаксис запису програм, в якому, зокрема, цифровий код операції замінений мнемонічним кодом. Програма стала мати більш читану форму, але її не розуміла ЕОМ. Тому знадобився створити спеціальну програму транслятор, який перетворює програму з мови асемблера на машинну мову. Ця проблема зажадала, у свою чергу, глибоких наукових досліджень і розробки різних теорій, наприклад, теорію формальних мов, які лягли в основу створення трансляторів. Практично будь-який клас ЕОМ має свою мову асемблера. На сьогоднішній день мова асемблера використовується для створення системних програм, що використовують специфічні апаратні можливості даного класу ЕОМ.
. 2 Другий етап розвитку
Наступний етап характеризується створенням мов високого рівня (МВР). Ці мови є універсальними (на них можна створювати будь прикладні програми) і алгоритмічно повними, мають більш широкий спектр типів даних і операцій, підтримують технології програмування. На цих мовах створюється незліченну безліч різних прикладних програм. Мови програмування високого рівня діляться на кілька видів.
Серед принципових відмінностей ЯВУ від мов низького рівня виділяють наступне:
. використання змінних;
. можливість запису складних виразів;
. розширюваність типів даних за рахунок конструювання нових типів з базових;
. розширюваність набору операцій за рахунок підключення бібліотек підпрограм;
. слабка залежність від типу ЕОМ.
З ускладненням мов програмування ускладнюються і транслятори для них. Тепер в набір інструментів програміста, окрім транслятора, входить текстовий редактор для введення тексту програм, відладчик для усунення помилок, бібліотекар для створення бібліотек програмних модулів і безліч інших...