Главная страница
Навигация по странице:

  • 1. этап

  • Трансляция

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

  • Инструментарий технологии программирования

  • Состав и назначение инструментария технологии программирования

  • Средства для создания приложений

  • Локальные средства разработки программ.

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

  • Инструментальная среда пользователя

  • 1 Информация. Понятие информации. Концепции информации


    Скачать 0.93 Mb.
    Название1 Информация. Понятие информации. Концепции информации
    Анкорotvety.doc
    Дата16.07.2018
    Размер0.93 Mb.
    Формат файлаdoc
    Имя файлаotvety.doc
    ТипДокументы
    #21549
    страница22 из 27
    1   ...   19   20   21   22   23   24   25   26   27

    45 Схема процесса создания загрузочного модуля


    Программа, подготовленная на языке высокого уровня, проходит несколько этапов:

    1. этап. В текстовом редакторе пишется исходный код программы на алгоритмическом языке (source code) и сохраняется в файле с расширением *.pas.

    2 этап. Трансляция, происходит преобразование исходного кодапрограммы (source code) в объектный код(object code), т.е. происходит проверка синтаксиса написания операторов, и если ошибок в написании нет, осуществляется перевод на язык машинных кодов. Файл объектного кода имеет расширение *.obj;

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

    Трансляторы делятся на два класса: компиляторы (compiler) и интерпретаторы (interpreter). Компиляторы транслируют всю программу, но без ее выполнения. Интерпретаторы, в отличие от компиляторов, выполняют пооператорный перевод на машинный язык и выполнение всей программы.

    3. этап. Компоновка, когда происходит обработка объектного кода редактором связей, специальной программой осуществляющей построение загрузочного модуля(load module), пригодного к выполнению (рис 16.).

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

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

    46 Классификация инструментария технологии программирования


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

    Состав и назначение инструментария технологии программирования

    .

    Рис. 17 Классификация инструментария технологии программиррования.

    В настоящее время бурно развивается направление, связанное с технологией создания про­граммных продуктов. Это обусловлено переходом на промышленную технологию произ­водства программ, стремлением к сокращению сроков, трудовых и материальных затрат на производство и эксплуатацию программ, обеспечению гарантированного уровня их качест­ва. Это направление часто называют программотехникой. Программотехника— технология разработки, отладки, верификации и внедрения программного обеспечения. Инструментарийтехнологии программирования— программные продукты поддержки (обеспечения) технологии программирования.

    В рамках этих направлений сформировались следующие группы программных продуктов (рис.17):

    Средства для создания приложений, включающие:

    • локальные средства, обеспечивающие выполнение отдельных работ по созданию программ;

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

    САSE-технология (Computer-Aided System Engineering),представляющая методы анализа, проектирования и создания программных систем и предназначенная для автоматизации процессов разработки и реализации информационных систем.

    Локальные средства разработки программ. Эти средства на рынке программных продук­тов наиболее представительны и включают языки и системы программирования, а также инструментальную среду пользователя.

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

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

    машинные языки (computer language) — языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);

    машинно-ориентированные языки (computer-oriented language) — языки программирования, которые отражают структуру конкретного типа компьютера (ассемблеры, этот язык в настоящее время в основном используется для написания драйверов- программ управления устройствами);

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

    алгоритмические языки (algorithmic language) — не зависящие от архитектуры компьютера языки программирования для отражения структуры алгоритма (Паскаль, Фортран, Бейсик и др.);

    процедурно-ориентированные языки (procedure-oriented language) — языки программирования, где имеется возможность описания программы как совокупности процедур (подпрограмм);

    проблемно-ориентированные языки (universal programming language) — языки про­граммирования, предназначенные для решения задач определенного класса (Лисп, РПГ, Симула и др.);

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

    Системы программирования (programmingsystem) включают:

    компилятор;

    интегрированную среду разработчика программ;

    отладчик;

    средства оптимизации кода программ;

    набор библиотек (возможно с исходными текстами программ);

    редактор связей;

    сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;

    справочные системы;

    документатор исходного кода программы;

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

    Инструментальная среда пользователяпредставлена специальными средствами, встроенными в пакеты прикладных программ, такими как:

    библиотека функций, процедур, объектов и методов обработки;

    макрокоманды;

    языковые макросы;

    программные модули-вставки;

    генераторы приложений;

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

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

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

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

    высокопроизводительный компилятор;

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

    специальная технология работы с базами данных;

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

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

    Средства CASE-технологий делятся на две группы:

    встроенные в систему реализации — все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);

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

    Основное достоинство CASE-технологии — поддержка коллективной работы над про­ектом за счет возможности работы в локальной сети разработчиков, экспорта/импорта любых фрагментов проекта, организационного управления проектом.

    Некоторые CASE-технологии ориентированы только на системных проектировщиков и предоставляют специальные графические средства для изображения различного вида моделей:

    диаграмму потоков данных (DFD — data flow diagrams) совместно со словарями данных и спецификациями процессов;

    диаграмму "сущность-связь" (ERD — entity relationship diagrams), являющуюся инфологической моделью предметной области.
    1   ...   19   20   21   22   23   24   25   26   27


    написать администратору сайта