Основные данные о работе
Версия шаблона |
2.1 |
ЦДОР |
|
Вид работы |
Творческое эссе |
Название дисциплины |
Информационные технологии
(курс 3) |
Тема |
Классификация языков программирования |
Фамилия |
|
Имя |
|
Отчество |
|
№ контракта |
|
Основная часть
Классификация языков программирования
Язык программирования —
формальная знаковая система,
предназначенная для описания
алгоритмов в форме, которая
удобна для исполнителя (например,
компьютера). Язык программирования
определяет набор лексических,
синтаксических и семантических
правил, используемых при составлении
компьютерной программы. Он позволяет
программисту точно определить то, на
какие события будет реагировать компьютер,
как будут храниться и передаваться данные,
а также какие именно действия следует
выполнять над этими при различных обстоятельствах.
Со времени создания первых
программируемых машин человечество
придумало уже более двух с
половиной тысяч языков программирования.
Каждый год их число пополняется
новыми. Некоторыми языками умеет
пользоваться только небольшое
число их собственных разработчиков, другие
становятся известны миллионам людей.
Профессиональные программисты иногда
применяют в своей работе более десятка
разнообразных языков программирования.
Создатели языков по-разному
толкуют понятие язык программирования.
Среди общих мест, признаваемых большинством
разработчиков, находятся следующие:
·Функция: язык программирования предназначен
для написания компьютерных программ,
которые применяются для передачи
компьютеру инструкций по выполнению
того или иного вычислительного
процесса и организации управления отдельными
устройствами.
·Задача: язык программирования отличается
от естественных языков тем, что предназначен
для передачи команд и данных от
человека компьютеру, в то время
как естественные языки используются
лишь для общения людей между собой. В
принципе, можно обобщить определение
"языков программирования" - это способ
передачи команд, приказов, чёткого руководства
к действию; тогда как человеческие языки
служат также для обмена информацией.
·Исполнение: язык программирования
может использовать специальные конструкции
для определения и манипулирования структурами
данных и управления процессом вычислений.
Всё множество языков программирования
можно разделить на две группы:
языки низкого уровня и языки
высокого уровня.
Язык программирования низкого
уровня – это язык программирования,
созданный для использования
со специальным типом процессора
и учитывающий его особенности.
В данном случае «низкий уровень»
не значит «плохой». Имеется в
виду, что язык близок к машинному
коду (он позволяет непосредственно реализовать
некоторые команды процессора).
К языкам низкого уровня
относятся языки Ассемблера. Свое
название они получили от имени
системной программы Ассемблер,
которая преобразует исходные
программы, написанные на таких
языках, непосредственно в коды машинных
команд. Термин «ассемблер» произошел
от английского слова assembler – сборщик
частей в одно целое. Частями здесь служат
операторы, а результатом сборки – последовательность
машинных команд. Процесс сборки называется
ассемблированием.
Ассемблер машинно-зависимый
язык, он отражает особенности
архитектуры конкретного типа
компьютера. Исходная программа,
написанная на ассемблере, состоит
из одного или нескольких модулей,
а каждый модуль – из операторов.
Язык Ассемблера объединяет
в себе достоинства языка машинных
команд и некоторые черты языков
высокого уровня. Ассемблер обеспечивает
возможность применения символических
имен в исходной программе
и избавляет программистов от
утомительного труда по распределению
памяти компьютера для команд, переменных
и констант, что неизбежно при программировании
на языке машинных команд.
Ассемблер
позволяет также гибко и полно
использовать технические возможности
компьютера, как и язык машинных
команд. Транслятор исходных программ
в Ассемблере проще транслятора, требующегося
для языка программирования высокого
уровня. На Ассемблере можно написать
столь же эффективную по размеру и времени
выполнения программу, как и программу
на языке машинных команд. Это достоинство
отсутствует у языков высокого уровня.
Часто язык Ассемблера дополняется
средствами формирования макрокоманд,
каждая из которых эквивалентна
целой группе машинных команд.
Такой язык называют языком
макроассемблера. Применение «макстроительных»
блоков и приближает язык Ассемблера
к языкам высокого уровня.
Языки программирования высокого
уровня заметно проще в изучении
и применении. Программы, написанные
с их помощью, можно использовать
на любой компьютерной платформе,
правда при условии, что для
нее существует транслятор данного
языка. Эти языки вообще никак не учитывают
свойства конкретного процессора и не
предоставляют прямых средств для обращения
к нему. В некоторых случаях это ограничивает
возможности программистов, но зато и
оставляет меньше возможностей для совершения
ошибок.
Фортран – исторически первый
компилируемый язык программирования,
разработанный в 1954-1958 г.г. Джимом
Бекусом. Базовые принципы, заложенные
в основу этого языка, впоследствии
легли в основу многих других
языков программирования высокого
уровня.
Не отягощенный формальностями,
язык Фортран оказался достаточно
прост в изучении и потому
нашел широкое распространение
в среде ученых и инженеров.
Большинство крупных научно-технических
программ написано на Фортране
потому, что он обладает переносимостью
и устойчивостью, а также благодаря наличию
встроенных математических и тригонометрических
функций. Неотъемлемой частью любой прикладной
программы на языке Фортран является расширенная
графическая библиотека, позволяющая
использовать различные графические данные
и изображения.
Кобол – компилируемый язык
программирования для «делового»
применения. Этот язык программирования
был разработан в 1959-1961 г.г.
прежде всего для исследований
в экономической сфере. Язык
позволяет эффективно работать с
большим количеством данных, он насыщен
разнообразными возможностями поиска,
сортировки и распределения.
О программах на Коболе, основанных
на широком использовании английского
языка, говорят, что они понятны
даже тем, кто не владеет
Коболом, поскольку тексты на этом
языке программирования не нуждаются
в каких-либо специальных комментариях.
Такие программы принято называть самодокументирующимися.
К числу других плюсов Кобола
относят его структурированность.
Довольно мощные компиляторы
с этого языка разработаны для
персональных компьютеров. Некоторые
из них столь эффективны, что программу,
отлаженную на персональном компьютере,
нетрудно перенести на большие ЭВМ.
Алгол – компилируемый язык
программирования, впервые опубликованный
в 1960 г.
От языка Фортран Алгол отличался
значительно более строгими правилами
синтаксиса, что позволило создавать с
его помощью программы больших размеров,
но вызвало существенные сложности в практическом
применении для решения повседневных
задач. Поэтому Алгол нашел применение
не в инженерных, а в научных кругах, в
первую очередь среди специалистов по
прикладной математике, теоретической
и экспериментальной физике. В этих сферах
он использовался, пока его не сменил более
удобный и не менее строгий язык Паскаль.
Паскаль – компилируемый
язык программирования, созданный в 1968-1970
г.г. в Швейцарском Федеральном институте
технологии в Цюрихе Никласом Виртом.
В основу языка Паскаль
были положены принципы, впервые
представленные Алголом, но правила
синтаксиса были несколько упрощены,
и язык получил большую популярность.
Особенно широкое распространение языка
началось после 1984 г., когда был представлен
удобный и эффективный компилятор Turbo
Pascal.
Язык Паскаль впервые ввел
некоторые принципиально новые
типы данных и подвел программистов
к понятию о структурном программировании,
что сказалось на самом стиле разработки
программ. С распространением этого языка
впервые появилось понятие о программировании,
как о проектировании программ, которое
в дальнейшем было развито другими языками
и системами программирования.
Сегодня Паскаль является
одним из трех основных языков
программирования. Строгость и четкость
делают его почти идеальным
для академического изучения.
Этот язык считается базовым
во многих неспециализированных
высших учебных заведениях и
университетах мира.
Бейсик – интерпретируемый
язык, хотя существуют некоторые
версии, для которых имеются компиляторы.
Он был создан в 1963 г. при
непосредственном участии в его
разработке американцев Джона
Кемени и Томаса Курца.
Данный
язык программирования считается простейшим.
В принципе, Бейсик создавался в качестве
учебного языка, средствами которого легко
можно представить принципы создания
алгоритмов.
Однако простота языка программирования
оборачивалась, особенно в ранних
версиях, трудностями структурирования.
Кроме того, Бейсик не допускал рекурсию
– интересный прием, позволяющий составлять
эффективные и в то же время короткие программы.
Одно из удобств Бейсика
состоит в небольшом размере
интерпретатора: существуют реализации,
в которых он занимает всего несколько
кБайт. В простейших 8-разрядных компьютерах
это свойство используют для встраивания
интерпретатора в микросхему постоянного
запоминающего устройства, и тогда компьютер
сразу при включении готов к исполнению
команд и программ Бейсика (не надо ничего
загружать).
Язык Бейсик хорошо подходит
для алгоритмического программирования.
С его помощью можно создавать
программы длиной до 100-200 операторов,
но для более крупных проектов
он не подходит, поскольку становится
трудно следить за непрерывно возникающими
связями между отдельными частями программы.
Си - сотрудник фирмы Bell Labs Денис
Ритчи создал в 1972 г. во время
совместной работы с Кеном
Томпсоном, как инструментальное
средство для реализации операционной
системы Unix, однако популярность
этого языка быстро переросла рамки конкретной
операционной системы и конкретных задач
системного программирования. В настоящее
время любая инструментальная и операционная
система не может считаться полной, если
в ее состав не входит компилятор языка
Си.
Ритчи не выдумывал Си
просто из головы, прообразом
послужил язык Би, разработанный
Томпсоном. Язык Си был разработан
как инструмент для программистов-практиков.
В соответствии с этим главной
целью его автора было создание
удобного и полезного во всех отношениях
языка.
Язык Си задумывался как
язык промежуточный между языками
высокого и низкого уровня. От
компилятора пытались добиться
производительности, близкой к производительности
Ассемблера, но в то же время
сохранить возможность переноса
программ между компьютерными платформами,
характерную для языков высокого уровня.
Хотя язык требует от программистов высокой
дисциплины, он не строг в формальных претензиях
и допускает краткие формулировки.
Необычайную популярность язык
Си приобрел благодаря тому, что
он, как и Паскаль, является языком структурного
программирования, но позволяет генерировать
более производительный и компактный
рабочий код.
Характерным недостатком языка
стала относительно высокая сложность
изучения по сравнению с
языками Паскаль и Бейсик.
Язык Си++ был разработан в
1980 г. Бьерном Страуструпом в
компании Bell Labs.
Си++ - компилируемый язык программирования.
Он позволяет создавать программы
более компактные и эффективные,
чем, например Паскаль, но его
изучение сложнее. Поэтому Си++ обычно
изучают в специализированных учебных
заведениях, в которых готовят программистов.
Сложность изучения языка
Си++ во многом связана с тем,
что в самом языке отсутствуют
средства для управления вводом
и выводом информации. И это
понятно, поскольку эти средства у
каждой модели компьютера свои, а Си++ является
абстрактным языком, не ориентированным
на конкретную модель компьютера. Поэтому
часто язык изучают не на конкретных примерах,
а на абстрактных теоретических конструкциях,
что крайне неудобно для начинающих.
Очевидно, что очень многое
Си++ позаимствовал у языка Си.
Эти заимствования обеспечили
Си++ мощными средствами низкого
уровня, позволяющими решать сложные
задачи системного программирования.
Но Си++ отличается от Си в
первую очередь разной степенью внимания
к типам и структурам данных. Это связано
с появлением понятий класса, производного
класса и виртуальной функции. Это дает
Си++ более эффективные возможности для
контроля типов данных и обеспечивает
модульность программы.
Язык Си++ является средством объектного
программирования, новейшей методики
проектирования и реализации программ,
которая в текущем десятилетии, скорее
всего, заменит традиционное процедурное
программирование.
Список использованных интернет-ресурсов
№ п/п |
Наименование интернет-ресурса |
Ссылка на конкретную
используемую страницу интернет-ресурса |
1 |
Языки программирования. |
http://life-prog.ru/
|
2 |
Язык программирования. Материал
из Википедии. |
http://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F |
3 |
Все о языках программирования. |
http://www.altcode.ru/assembler/about/ |
4 |
В. П. Самойленко - Языки программирования
и методы трансляции. |
http://thelib.ru/books/v_p_samoylenko/yazyki_programmirovaniya_i_metody_translyacii.html |
5 |
Основы информатики: Учебник для
вузов. |
http://fictionbook.ru/author/vadim_vasilevich_liysenko/osnoviy_informatiki_uchebnik_dlya_vuzov/read_online.html?page=1 |