Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Напрямки розвитку мов програмування




Еволюція мов програмування

Мови програмування зазнали великі зміни з тих пір, як в 40-х роках XX століття почалося їхнє використання. Перші мов програмування були дуже примітивними і мало чим відрізнялися від формалізованих впорядкування двійкових чисел (одиниць і нулів), зрозумілих комп'ютера. Їх називають мовами програмування низького рівня. Використання таких мов було вкрай незручно з точки зору програміста, тому що він повинен був знати числові коди всіх машинних команд і власноруч розподіляти пам'ять під команди програми й данні.

Щоб спростити спілкування людини з комп'ютером, були розроблені мови програмування типу Асемблер, в яких змінні величини стали зображуватися символічними іменами, а числові коди операцій були замінені на мнемонічні (словесні) позначення, які легше запам'ятати. Мова програмування наблизився до людської мови, але відійшов від мови машинних команд. Тому, щоб комп'ютер міг працювати на мовою Асемблера, знадобився транслятор - програма, переводить текст програми на Асемблері в еквівалентні машинні команди. Мови типу Асемблер є машинно-орієнтованими, тому що вони налаштовані на структуру машинних команд конкретного комп'ютера. Різні комп'ютери з різними типами процесорів мають різний Асемблер.

Мова С спочатку був розроблений для комп'ютерів, які використовують операційну систему UNIX. Він є відносно простою мовою, в ньому немає операцій над символьними рядками і списками, але, на відміну від Pascal, в ньому закладені можливості безпосереднього звернення до деяких машинним командам, до певних ділянок пам'яті комп'ютера. Мова З широко використовується як інструментальний мова для розробки операційних систем, трансляторів, баз даних, а також інших системних і прикладних програм.

У розвитку мов програмування виділяються два основних напрямки: процедурне і не процедурного. У процедурних мовах програма явно описує дії, які необхідно виконати, а результат задається способом отримання його за допомогою деякої процедури - певній послідовності дій. Основними засобами, що застосовуються в цих мовах, є величини (у тому числі і табличні), привласнення, цикли, процедури. При побудові процедурної програми необхідно чітко уявляти, які дії і в якій послідовності будуть проводитися при її виконанні. Серед процедурних мов можна, у свою чергу, виділити структурні та операційні мови. У структурних мовах одним оператором записуються цілі алгоритмічні структури: розгалуження, цикли. В операційних мовах для цього використовується кілька операцій. Широке поширення одержали структурні мови Pascal, С, Ada, PL / 1 та операційні мови Fortran, Basic, Focal.

Функціональна програма, як і процедурна, описує дії, які треба зробити для досягнення результату (виклик функції - це теж дія), але її побудова вимагає швидше математичного, ніж алгоритмічного мислення.

У логічної традиції програма взагалі не описує дій. Вона задає дані і співвідношення між ними. Після цього можна ставити питання. Машина перебирає відомі (задані в програмі) дані і знаходить відповідь на питання. Порядок перебору не описується в програмі, а неявно задається самим мовою. Класичним мовою логічного програмування вважається Prolog, хоча він і містить деякі засоби управління перебором, тобто процедурні елементи. Побудова логічної програми взагалі не вимагає алгоритмічного мислення. Тут немає динаміки, немає опису дій, програма описує статичні відношення об'єктів, а динаміка знаходиться в механізмі перебору і прихована від програміста.

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




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 1374; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.