Файл: Классификация языков программирования. Критерии выбора среды и языка разработки программ..pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 26.06.2023

Просмотров: 70

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Введение

В наше время общество XXI века является информационным. Статистика: в ведущих странах более 60% населения занято в информационной среде, а 40% населения в производственной сфере. Поэтому выбранная мною профессия программиста гарантирует приобретение наиболее престижной, дефицитной и высокооплачиваемой профессии. Тем более есть очень ёмкое утверждение: «Кто владеет информацией – тот владеет миром!»

1.Классификация языков программирования

Фактор

Характеристика

Группы

Примеры ЯП

Уровень ЯП

Степень близости ЯП к архитектуре компьютера

Низкий

Автокод, ассемблер

Высокий

Fortran, Pascal, ADA, Basic, C и др. ЯВУ

Сверхвысокий

Сетл

Специализация ЯП

Потенциальная или реальная область применения

Общего назначения (Универсальные)

Algol, PL/1, Simula, Basic, Pascal

Специализированные

Fortran (инженерные расчеты), Cobol(коммерческие задачи),

Refal, Lisp (символьная обработка),

Modula, Ada (программирование в реальном времени)

Алгоритмичность

Возможность абстрагироваться от деталей алгоритма решения задачи. Алгоритмичность тем выше, чем точнее приходится планировать порядок действий

Процедурные

Ассемблер, Fortran, Basic, Pascal, Ada

Непроцедурные

Prolog, Langin

Существуют пять языков программирования, которые от поколения к поколению улучшают свои характеристики, становясь более простыми и доступными.

Таблица. 1. Классификация ЯП[1]

1.1. Определение Языка программирования

Язык программирования (ЯП) – это знаковая система для планирования поведения компьютера1.

Система программирования является инструментальным средством программиста – разработчика системных или прикладных программ.


Знаковая система – это совокупность соглашений, определяющих набор знаковых ситуаций. Знаковая ситуация – первичное понятие семиотики, ее элементами являются знак и детотат (Рис 1. 1.).*

Знаковая ситуация N

<знакn, детотатn>

Знаковая система

Знаковая ситуация 1

<знак1, детонат1>

Рис 1.1. (Структура знаковой системы)

Знак – это обозначение или имя, денотат – значение, смысл.

Примеры знаков и денотатов приведены в таблице 2.

Правила, определяющие структуру допустимых знаков, называют синтаксисом языка.

Правила, определяющие денотаты, которые соответствуют допустимым знакам, называют семантикой языка.

Опираясь на введенные понятия, можно предложить модифицированную формулировку ЯП.

Знак

Денотат

Сообщение

Буква

Слово

Sqrt

If-then-else

Смысл

Звук

Понятие

Вычисление квадратного корня

Разветвление вычислений

Таблица 2. Знаки и денотаты

Язык программирования - это правило образования знаков (синтаксис) и согласованные с ними правила образования денотатов (семантика).[2]

В ЯП знаки - это элементы программ, а денотаты – характеристики поведения исполнителя (компьютера).

1.2. Практическое определения Языка Программирования

В практическом определении ЯП – это средство общения между пользователем и компьютером (исполнителем).[3]

С помощью ЯП формируются сообщения для компьютера. Эти сообщения должны быть понятны компьютеру. Возможные ошибки разделяются на синтаксические, семантические, и прагматические (рис 1.2.)

Ошибки сообщений на языке программирования

синтаксические

семантические

прагматические

Рис 1.2. Классификация ошибок сообщений

Синтаксические ошибки возникают, если автор сообщения подразумевает одну структуру сообщения, а получатель – другую. Устраняются легко. В ЯП таких ошибок не бывает так как их создатели используют принцип синтаксической однозначности (правильный текст должен иметь единственную допустимую структуру).


Семантические ошибки связаны с искажением смысла элементов сообщений, а прагматические ошибки – с искажением цели (назначения) элемента или сообщения.

Для исключения ошибок необходимо, чтобы отправитель и адресат пользовались:

  1. Одинаковыми правилами разложения сообщения на составляющие (предмет синтаксиса);
  2. Согласованными правилами придающими сообщению смысл (Предмет семантики);
  3. Согласованными целевыми установками (предмет прагматики).

1.3.Технологическое определение Языка Программирования

В технологическом определении ЯП – инструмент для производства программных услуг.

Программирование нацелено на обслуживание пользователей. Принцип хорошего обслуживания: «Клиент всегда прав». Это означает, что программы должны быть дружественными к пользователю. [4]

Программы должны быть:

  1. Надежными (Содержать мало ошибок)
  2. Устойчивыми (сохранять работоспособность в неблагоприятных условиях эксплуатации, ограниченности ресурсов, перегрузок, ошибок пользователя, сбоев и отказов аппаратуры)
  3. Заботливыми (Должны уметь объяснять свои действия и ошибки пользователя)

Есть два источника сложности программирования:

  1. Семантический разрыв – разрыв между уровнем элементарных операция компьютера и уровнем потенциально возможных услуг. Компьютер – очень быстрый исполнитель. Отсюда соблазн программировать его на оказания сложных услуг (С помощью очень сложных программ). В то же время возможности человека при работе со связанными объектами ограниченным числом ИНГВЕ = 7 + 2. Выход из положения – создавать для определенного класса услуг подходящий для ЯП (Со сложными операциями) и программировать на таком ЯП.
  2. Незнание компьютером реального мира. Поэтому компьютер не может контролировать соответствие указаний программиста поставленным задачам (целям), ради достижений для которых они сформированы.[5]

Вывод.

Изучение языка программирования дает знание и понимание разнообразных подходов к программированию. Понимание общих принципов и концепций определяющих строение и применение языка программирования, позволяет легче и глубже освоить конкретный язык – основной профессиональный инструмент программиста.


2. Применение языка программирования

2.1. Критерии эффективности выбора языков программирования

Современно человеческое общество все сильнее зависит от компьютерных систем, управляемых программами. Эти системы весьма настойчиво проникают во время сферы человеческой жизни. Они буквально окружают человека и на работе, и дома, и на отдыхе.[6]

Основной инструмент для создания программ – язык программирования. Выбор подходящего языка программирования для решения задач определяются множеством причин, но главной причиной является принадлежность задачи к конкретной предметной области.

Язык программирования можно определить множеством показателей, характеризующих отдельные его свойства. Возникает задача введения меры для оценки степени приспособленности ЯП к выполнению возложенных на него функций — меры эффективности. Эффективность определяет степень соответствия ЯП своему назначению. Она измеряется либо количеством затрат, необходимых для получения определенного результата, либо результатом, полученным при определенных затратах. Произвести сравнительный анализ эффективности нескольких ЯП, принять решение на использование конкретного языка позволяет критерий эффективности. Критерий эффективности — это правило, служащее для сравнительной оценки качества различных ЯП. Критерий эффективности можно назвать правилом предпочтения сравниваемых вариантов.[7]

Строятся критерии эффективности на основе частных показателей эффективности (показателей качества) Способ связи между частными показателями определяет вид критерия эффективности. В качестве частных показателей обычно выступают:

1) читабельность (легкость чтения и понимания программ);

2) легкость создания программ (удобство языка для создания программ в выбранной области);

3) надежность (обеспечение минимума ошибок при работе программ);

4) стоимость (суммарная стоимость всего жизненного цикла языка);

5) переносимость программ (легкость переноса программ из одной операционной среды в другую);

6) универсальность (применимость к широкому кругу задач);


7) четкость (полнота и точность официального описания языка). В свою очередь, каждый из частных показателей зависит от множества разнообразных характеристик.

2.2. Читабельность

Одним из важнейших показателей качества языка программирования является легкость чтения и понимания программ, написанных на нем. По современным представлениям самый длинный период времени из жизненного цикла программ приходится на сопровождение, в ходе которого программы часто модифицируются. Поскольку читабельность программ определяет легкость сопровождения, ее считают существенной характеристикой качества программ и языков программирования.

Читабельность (Readability) языка программирования должна способствовать легкому выделению основных понятий каждой части программы без обращения к документации[8].

Простота. Простота сильно влияет на читабельность языка программирования. Язык должен предоставить простой набор конструкций, которые могут быть использованы в качестве базисных элементов при создании программы. Желательно обеспечить минимальное количество различных понятий с простыми правилами их комбинирования. Этому мешает наличие в языке нескольких способов описания одного и того же действия. Например, в языке С добавление единицы к целому числу можно записать четырьмя способами. Сильное воздействие на простоту оказывает синтаксис языка: он должен прозрачно отражать семантику конструкций, исключать двусмысленность толкования. Предельно лаконичный синтаксис удобен при написании программы, однако усложняет ее модификацию, поскольку в программе нелегко разобраться. Здесь нужен разумный компромисс — простота не должна быть чрезмерной, не должна приводить к загадкам расшифровки

Ортогональность. Ортогональность означает, что любые возможные комбинации различных языковых конструкций будут осмысленными, без непредвиденных ограничений или неожиданного поведения, возникающих в результате взаимодействия конструкций или контекста использования.

Например, предположим, что ЯП содержит три элементарных типа данных (целый, вещественный с плавающей точкой и символьный), а также две конструкции данных (массив и указатель). Если обе конструкции могут применяться к этим типам и самим себе, то говорят об их ортогональности, обеспечивающей создание большого количества структур данных.

Когда конструкции языка ортогональны, язык легче выучить и использовать для чтения и создания программ, ведь в нем меньше исключений и специальных случаев, требующих запоминания.