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

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

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

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

Добавлен: 01.04.2023

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

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

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

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

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

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

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

Механизм моделирования программы как совокупности объектов различных классов и, кроме того, использование классов как в качестве модификаций других классов, обеспечивает высокую степень модульности. [9, 15]

Инкапсуляция — в объектно-ориентированном программировании - сокрытие внутренней структуры данных и реализации методов объекта от остальной программы. В идеале, состояние объекта инкапсулируется и получает доступ только к методам этого объекта. Таким образом, инкапсуляция и скрытие информации являются неотъемлемыми преимуществами ООП.

Инкапсуляция, наследование и полиморфизм — фундаментальные свойства, которыми должен обладать язык, претендующий называться объектно-ориентированным (языки, не имеющие наследования и полиморфизма, но имеющие только классы, обычно называются основанными на классах). Различные ОО языки используют совершенно разные подходы. Мы можем различать ОО языки, сравнивая механизм контроля типов, способность поддерживать различные программные модели и то, какие объектные модели они поддерживают.

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


Еще одной причиной использования объектно-ориентированного программирования является простота разработки и способность хорошей поддержки в дальнейшем, когда, например, разработчикам необходимо будет внести корректировки в код. Хорошо прокомментированные объекты и классы могут рассказать разработчику о том, что пытается делать та или иная функция программы. [9]

В данной главе мы рассмотрели основные парадигмы программирования, в частности, провели анализ объектно-ориентированного и процедурного подходов.

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

2.1 Fortran

Фортран — это язык программирования, в основном используемый научным сообществом. Его название — сокращение FORmula TRANslation, и его цель — предоставить способ рассказать компьютерам о вычислении сложных математических выражений с большей легкостью, чем язык ассемблера.

FORTRAN — один из самых ранних языков программирования. В оригинальных версиях использовались перфокарты для написания программ. С одной стороны, FORTRAN имеет огромное количество доступных библиотек. Тем не менее, Fortran также имеет много архаичных функций, особенно в более ранних версиях. [4]

Первоначально Fortran включал не очень понятный синтаксис с фиксированными полями (5-значный номер строки, маркер продолжения и область оператора (плюс область номера последовательности карт в некоторых версиях). Однако новые спецификации для FORTRAN, такие как Fortran 90, 95, 2003 и 2008, не требуют такого странного форматирования. Кроме того, многие компиляторы имеют дополнительные улучшения для нестандартного кода. Новые стандарты добавляют функциональность и полностью совместимы со старыми версиями. При необходимости различия между этими устаревшими версиями и современным стандартом будут выделены, так как существует значительная база кода, написанная в более старых версиях, особенно FORTRAN 77.

FORTRAN, язык программирования, созданный в 1957 году Джоном Бэкусом, который сократил процесс программирования и сделал компьютерное программирование более доступным. [8, 9]

Создание FORTRAN, дебютировавшее в 1957 году, ознаменовало собой значительный этап в развитии языков компьютерного программирования. Предыдущее программирование было записано на языке машинного (первого поколения) языка или сборки (второго поколения), что требовало от программиста писать инструкции в двоичной или шестнадцатеричной системе. Неээфективность такого программирования привело к поиску более простого и доступного способа общения с компьютерами. В течение трехлетнего этапа развития Бэкус возглавил команду из 10 сотрудников International Business Machines (IBM) для создания языка, сочетающего форму английского сокращения с алгебраическими уравнениями.


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

Позволяя создавать программы на естественном языке, которые работают так же эффективно, как и ручные, FORTRAN стал языком программирования, который был выбран в конце 1950-х годов. Он был обновлен несколько раз в 1950-х и 1960-х годах, чтобы оставаться конкурентоспособным с более современными языками программирования. FORTRAN 77 был выпущен в 1978 году, за ним последовал FORTRAN 90 в 1991 году и дальнейшие обновления в 1996 и 2004 годах. Однако языки четвертого и пятого поколений в значительной степени вытеснили FORTRAN за пределы академических кругов, начиная с 1970-х годов. [4, 9, 15]

2.2 COBOL

COBOL является языком программирования высокого уровня разработанном CODASYL комитетом (Conference DaтаSy Languages) в 1960 году. С тех пор, ответственность за разработку новых стандартов COBOL регулировалось Американским национальным институтом стандартов (ANSI).

Были разработаны три стандарта ANSI для COBOL: в 1968, 1974 и 1985 годах. Новый стандарт COBOL, представляющий объектно-ориентированное программирование для COBOL, должен появиться в ближайшие несколько лет. [17]

Слово COBOL является аббревиатурой, что означает СОMMON Business Oriented Language. Как показывает расширенная аббревиатура, COBOL предназначен для разработки бизнес-приложений, обычно ориентированных на файлы. Он не предназначен для написания системных программ. Например, нам не будут разрабатывать операционную систему или компилятор.

Язык позволяет эффективно работать с большим количеством данных, он насыщен разнообразными возможностями поиска, сортировки и распределения. К числу других плюсов COBOL обычно относят его структурированность. Довольно мощные компиляторы с этого языка разработаны для персональных компьютеров. Некоторые из них столь эффективны, что программу, отлаженную на персональном компьютере, нетрудно перенести на большие ЭВМ.


Приложения COBOL часто работают в важнейших областях бизнеса. Например, более 95% данных финансового страхования обрабатывается COBOL. Серьезные финансовые и юридические последствия, которые могут возникнуть в результате отказа приложения, являются одной из причин того, почему такого рода приложения будут продолжать поддерживать [14, 20].

Приложения COBOL часто используют огромные объемы данных. Отдельные производственные файлы и базы данных, измеренные в терабайтах. [9, 17]

COBOL — простой язык (без указателей, без пользовательских функций, без пользовательских типов) с ограниченной функциональностью. Он поощряет простой стиль программирования. Несмотря на свои ограничения, COBOL зарекомендовал себя хорошо подходящим для своей целевой проблемной области (бизнес-вычисления). Большинство программ COBOL работают в плоскости, где сложность программы заключается в бизнес-правилах, которые необходимо кодировать, а не в сложности требуемых структур данных или алгоритмов. И в тех случаях, когда требуются сложные алгоритмы, COBOL обычно удовлетворяет потребность в соответствующем ключевом слове. [17]

COBOL — это простой язык с ограниченным спектром функций. Новое введение COBOL сохраняет все преимущества предыдущих версий, но теперь включает в себя:

  • пользовательские функции;
  • ориентация объекта;
  • национальные символы – Юникод;
  • несколько валютных символов;
  • культурная адаптивность (местные языки);
  • динамическое распределение памяти (указатели);
  • проверка данных с использованием нового VALIDATE-глагола;
  • типы данных двоичной и плавающей точек;
  • типы данных, определенные пользователем.

COBOL не является проприетарным (переносным) [14, 15, 20].

Стандарт COBOL не принадлежит ни одному конкретному поставщику. Независимый от поставщика комитет ANSI COBOL законодательно закрепляет формальные, не относящиеся к вендору синтаксис и стандарты семантического языка. COBOL был перенесен практически на любую аппаратную платформу: от любой Windows до каждого фальсификатора Unix до AS/400, VSE, DOS, VMS, Unisys, DG, VM и MVS.

Когда программа COBOL переносится на новый компьютер или имеет новые периферийные устройства, или требуется для работы в другой стране, программисты COBOL знают, что части программы, которые необходимо будет изменить для учета этих изменений, будут изолированы в отделе окружения. На других языках программирования дисциплина программистов могла обеспечить, чтобы ссылки, подлежащие изменению, были ограничены одной частью программы, но их можно было легко распространить по всей программе. В программах COBOL у программистов нет выбора. Жесткая иерархическая структура COBOL гарантирует, что эти элементы будут ограничены разделом окружения. [17]


2.3 Pascal

Паскаль — это процедурный язык программирования, разработанный в 1968 году и изданный в 1970 году Никлаусом Виртом и названный в честь французского математика и философа Блейса Паскаля. Pascal работает на различных платформах, таких как Windows, Mac OS и различных версиях UNIX/Linux.

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

Паскаль — это язык на основе Алгола и включает в себя множество конструкций Алгола. Алгол 60 является подмножеством Паскаля. Паскаль предлагает несколько типов данных и структуры программирования. Легко понять и поддерживать программы Pascal. [1, 2]

Паскаль вырос в популярности в учебной и академической арене по разным причинам:

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

Особенности языка Pascal. Паскаль имеет следующие функции:

  • Паскаль — строго типизированный язык;
  • он предлагает обширную проверку ошибок;
  • он предлагает несколько типов данных, таких как массивы, записи, файлы и наборы;
  • он предлагает различные структуры программирования;
  • он поддерживает структурированное программирование через функции и процедуры;
  • он поддерживает объектно-ориентированное программирование. [3]

Ниже приведен простой код паскаль (листинг 1), который будет печатать слова «Hello, World!». 

Листинг 1 — Простая программа на Pascal

program HelloWorld;

uses crt;

begin

writeln('Hello, World!');

readkey;

end.

Определение переменной помещается в блок, начинающийся с ключевого слова var , с последующим определением переменных следующим образом: «var A_Variable, B_Variable ... : Variable_Type;»

Переменные Pascal объявляются вне тела кода функции, что означает, что они не объявлены в парах начала и конца, но они объявляются после определения процедуры/функции и перед ключевым словом begin. Для глобальных переменных они определяются после заголовка программы. [3]

В Паскале процедура состоит из команд, которые должны быть выполнены, без возвращаемого значения, а функция — это процедура с возвращаемым значением. Определение функции/процедур будет таким, как показано в листинге 2.

Листинг 2 — Определение процедур