Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры по ТРПО.doc
Скачиваний:
13
Добавлен:
23.04.2019
Размер:
469.5 Кб
Скачать

Основные характеристики языков программирования

  1. Уровень языка

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

  1. Мощность языка

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

  1. Концептуальная целостность.

Характеризуется свойствами совокупности понятий, служащих для описания этого языка (единообразие понятий, экономия понятий и др.)

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

  1. Надежность (обеспечение минимума ошибок);

  2. Удобочитаемость;

  3. Полнота (способность описать класс задач некоторой предметной области);

  4. Гибкость и др.

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

  1. По поколениям

    1. Машинные (0 и 1);

    2. Ассемблеры (компактные программы, легко переводить в машинный код);

    3. Процедурные;

    4. Языки поддержки сложных структур данных;

    5. Языки искусственного интеллекта (Prolog). Позволяют делать логические выводы на знаниях.

    6. Языки нейронных сетей (самообучающиеся).

  2. По поддерживаемым методологиям

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

    2. Языки ООП;

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

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

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

  3. По принадлежности к семейству

    1. Семейство универсальных языков;

    2. Семейство уникальных языков (APL);

    3. Семейство языков параллельного программирования;

    4. C-семейство (версии);

    5. Pascal-семейство;

    6. Prolog-семейство;

  4. По ориентации на предметную область

    1. Языки форматирования текстов;

    2. Языки разметки;

    3. Языки скриптов и т.д.

  5. По степени абстракции от машины

    1. ЯНУ (прямой доступ к регистрам);

    2. ЯВУ;

    3. Языки сверхвысокого уровня;

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

Основные элементы:

  1. Фундаментальные модели и их семантика;

  2. Нотации;

  3. Руководство по использованию;

Два поколения:

  • языки структурного системного анализа и проектирования;

  • объектно-ориентированные языки моделирования;

По назначения языки моделирования делятся на:

  1. Языки описания архитектур;

  2. Языки проектирования модулей;

  3. Языки спецификаций;

  4. языки моделирования данных;

  5. Языки моделирования знаний.

К языкам моделирования относятся: диаграммы потоков данных, диаграммы функционального моделирования, диаграммы сущность-связь, КОК-карты, UML, диаграммы вариантов использования, диаграммы состояний, диаграммы последовательностей, компонентов и др.

  1. Инструментальные средства

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

Состав систем программирования:

  • Редактор;

  • Транслятор;

  • Отладчик;

  • Библиотеки период трансляции и период выполнения;

  • Средства управления компиляцией и построением проекта и др.

Классификация (производится по ряду признаков):

  1. По ориентированию на конкретный язык программирования;

  2. По специализированности (ориентация на предметную область);

  3. По комплексности (поддерживает ли среда все процессы или только часть);

  4. По ориентированности на конкретную технологию программирования;

  5. По ориентированности на коллективную разработку;

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

3 вида интегрирования:

  1. По пользовательскому интерфейсу;

  2. По данным;

  3. По управлению.

По ориентации на технологические процессы:

  1. Процесс-ориентированный инструментарий;

  2. Универсальный;

Универсальный инструментарий. Программа представляет собой текст.

Группы:

  1. Инструменты работы с текстом (редакторы, средства поиска).

    1. Средства, базирующиеся на регулярных выражениях.

Для поиска участков текста по некоторым конкретным шаблонам.

    1. Средства поиска различий (для обнаружений разницы между фрагментами)

diff, GNUdiff.

    1. Средства поиска на основе шаблона.

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

    1. Обозреватели БД программ.

Генерируют БД программы, куда в качестве сущностей включают имена файлов, функций, переменные и другие сущности программы с хорошо определенными отношениями между ними.

Omega, CLA

    1. Средства обнаружения плагиата;

Базируются на метриках Холстеда или на статистических деревьях исполнения.

    1. Текстовые редакторы;

    2. Синтаксически-ориентированные редакторы

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

EMACS, MENTOR, ALOE

    1. Гипертекстовые средства.

  1. Системы документирования

Основаны на различных принципах сбора информации по исходным текстам программ.

Java Doc, Toolbook.

  1. Системы разработки интерфейсов.

В настоящее время часто входят в CASE-средства.

  1. СУБД

    • Реляционные;

    • Логические;

    • Объектные.

  • Системы управления базами знаний и экспертные системы.

    • Системы AI;

    • Механизмы вывода на знаниях (логический вывод; метод, реализующий обратный вывод Маркова; продукционный вывод);

    • Механизмы неточного вывода на знаниях (присоединенный механизм и специально ориентированный).

  • Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]