Сделай Сам Свою Работу на 5

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





Место языков программирования в предметной области «Информатика»

 

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

 
 

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

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

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

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



 

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

· Процесс разработки ПО;

· Тестирование и сопровождение программного продукта;

· Анализ ПО и т.п.

 

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

 

Основные области программирования принято представлять тремя взаимосвязанными группами. Каждая группа – это объединение двух достаточно близких направлений.

Вопрос №2 Характеристики языков программирования.

Классификация.

Выделяются три характеристики языков программирования:



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

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

1. Машинные языки. Это языки самого нижнего уровня. Считается, чем ближе к машине, тем ниже уровень языка. О них говорилось в рамках первого вопроса.

2. Языки ассемблера. Языки ассемблера также машинно-зависимы, поэтому мы говорим о языках, а не о языке. Языки ассемблера также считаются низкоуровневыми.

3. Языки высокого уровня. На языках высокого уровня программировать значительно проще – они максимально приближены к обычному языку (опять же, чаще всего – английскому), и используют привычные всем нам математические знаки (например, +, -,=, >,< и т.д.).

Естественно, что для языков высокого уровня требуются программы-переводчики кода, написанного на этом языке в машинный код – компиляторы или интерпретаторы.

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

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

Ž Концептуальная целостность – характеризуется свойствами совокупности понятий, служащих для описания этого языка и включает три взаимосвязанных аспекта:



· Экономия понятий – язык должен достигать своей максимальной мощности минимальным количеством понятий.

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

К сожалению даже такие языки, как Pascal, допускают неортогональные конструкции. Например, пользователь может определить процедуры только с фиксированным числом параметров. Но некоторые стандартные процедуры (например, writeln())могут быть вызваны с переменным числом параметров.

· Единообразие понятий – требование согласованного единого подхода к описанию и использованию всех понятий.

Надежность – язык должен обеспечивать минимум ошибок при написании программ. Более того, язык должен быть таким, чтобы неправильные программы (программы с ошибками) было трудно писать.

 Удобочитаемость – легкость восприятия программы человеком. Эта характеристика особенно важна при коллективной работе, когда несколько человек работают с одним и тем же текстом программ.

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

Эффективность – обеспечение эффективной реализации, которая включает:

- эффективную реализацию компилятора;

- эффективную генерацию компилятором программного кода.

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

 

 
 

Языки программирования высокого уровня.

Различают 3 категории языков высокого уровня (см. таблицу).

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

 

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

В настоящее время сложилось довольно много классификаций языков программирования, самые известные из них:

1. Поддерживаемые методологии:

· Языки императивного программирования;

· Языки объектно-ориентрованного программирования;

· Языки функционального программирования;

· Языки логического программирования;

· Языки программирования в ограничениях.

2. Принадлежность к семействам:

  • Семейство универсальных языков(FORTRAN, Algol, Basic).Ориентированы на большой класс вычислительных задач.
  • Семейство уникальных языков. Cobol (обработка коммерческой информации), CLU, Postscript.
  • С-семейство языков (C++, C#, Java).
  • Pascal-семейство языков (Modula-2, ComponentPascal).
  • Ada-семейство языков и т.д.

3. Ориентация на предметные области:

· Языки форматирования текстов TeX (издательские системы, системы подготовки научных публикаций с большим колличеством формул).

· Языки разметки. Представляют собой набор правил и шаблонов для описания содержания, структуры и содержания любых электронных документов (XML – расширяемый язык разметки, HTML – язык разметки гипертекста, MathML – язык описания мат. формул).

· Языки создания графики. Подготовка визуальной графической информации (OpenJL).

· Языки описания виртуальной реальности. Создание 3D-изображений, т.н. виртуальных миров, в которых пользователь может перемещаться и взаимодействовать с объектами. Языки позволяют определять среду действия персонажей компьютерных игр.

4. Степень абстракции от аппаратуры.Языки низкого уровня, языки высокого уровня (Pascal, C, Ada), языки сверхвысокого уровня (Prolog, SETL, APL).

 

 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.