24537

Системы программирования: состав систем программирования. Этапы разработки ПО

Доклад

Информатика, кибернетика и программирование

Современные системы программирования как правило представляют собой интегрированную среду разработки integrated development environment IDE к компонентам которой относятся следующие программные средства: текстовый редактор editor предназначенный для создания текстов исходной программы на языке высокого уровня ЯВУ или ассемблере макроассемблере; компилятор compiler составитель предназначенный для трансляции перевода исходного текста входной программы в эквивалентную ей выходную программу объектный код на языке нижнего...

Русский

2013-08-09

124.23 KB

31 чел.

Вопрос 42. Системы программирования: состав систем программирования. Этапы разработки ПО.

       §8 Состав систем программирования.

Системой программирования (СП) называется комплекс программных средств предназначенных для разработки и отладки ПО.

Современные системы программирования, как правило, представляют собой интегрированную среду разработки (integrated development environmentIDE), к компонентам которой относятся следующие программные средства:

- текстовый редактор (editor), предназначенный для создания текстов исходной программы на языке высокого уровня (ЯВУ) или ассемблере (макроассемблере);

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

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

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

- загрузчик (loader), обеспечивающий подготовку готовой программы к выполнению;

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

Этапы разработки ПО в системе программирования представлены на рис. 8

Современные системы программирования строятся на основе так называемых языков четвертого поколения – 4GL (four generation languages), которые предназначены для поддержки систем быстрой разработки приложений – RAD (rapid application development).

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

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

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

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

Рис. 8. Этапы разработки ПО в системе программирования

8.2 Компоненты систем программирования

Текстовые редакторы

Текстовый редактор, входящий в состав системы программирования, кроме обычных функций выполняет и некоторые дополнительные функции:

- отображение ошибок в исходной программе после компиляции, с позиционированием на место в тексте программы, содержащее ошибку;

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

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

Трансляторы, компиляторы и интерпретаторы

Транслятор – это программа, которая переводит входную программу на исходном (входном языке) в эквивалентную ей выходную программу на результирующем (выходном) языке.

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

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

Интерпретатор – это программа, которая воспринимает входную программу на исходном языке и выполняет её.

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

Большинство языков высокого уровня являются компилируемыми, т. е. для каждого из них разработан собственный компилятор (FORTRAN, ALGOL-68, PL/1, ADA, PASCAL, MODULA,SIMULA, C и многие другие).

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

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

Язык HTML (Hipertext Markup Language – язык описания гипертекста) на котором основан протокол HTTP (hiper text transfer protocol – протокол передачи гипертекста) – тоже интерпретируемый язык.

Схема работы транслятора

Схема работы транслятора представлена на рис. 8.2. Процесс компиляции состоит из двух основных этапов: синтеза и анализа.

Рис. 8.2. Схема работы транслятора


 

А также другие работы, которые могут Вас заинтересовать

40506. Сказки о животных. Своеобразие образа главного героя 36.5 KB
  Басня Волк и ягнёнок Сказка Волк и лиса И там и там изображаются животные а подразумеваются люди. Под маской волка изображаются отдельные черты характера лицемерие и к ним не к человеку у нас однозначное отношение трусость как таковая плохо но трусливого человека можно любить за другие качества а трусость при этом деформируется. Здесь многозначное отношение к волку так как у него много черт характера. если мы говорим о лисе хитрой а волке жадном то мы превращаем сказку в басню а это ни в коем случае делать нельзя...
40507. Социально-бытовые, сатирические сказки 27.5 KB
  Два типа социальнобытовых сказок: в центре герой умный хитрый ловкий мужик. Мужик и барин Мужик и поп Мужик и богач семейный характер конфликты внутри семьи. Мужик и жена. Их герои мужик солдат работник и т.
40508. Специфика фольклора 34.5 KB
  широких народных масс = коллективное творчество устное художественное творчество может рассматриваться: с точки зрения этнографии все проявления отдельно словесное творчество с точки зрения этнологии все проявления вместе Фольклор обладает свойствами качествами которых больше нигде нет которые в совокупности дают специфику фольклора: 1 Устность. Аргументы: исторические потому что раньше письменности социальные крестьяне неграмотные коммуникационная ситуативное внутренней стороны устности: устность может...
40509. Фольклористика XVIII века 23 KB
  Параллельно с этим шла публикация того что было собрано: Чулков Собрание разных русских песен 1776 Лёвшин Русские сказки 1780 Львов Собрание русских народных сказок с их голосами 1790 Но в этих сборниках было мало собственно русского фольклора: не выработали принципы по которым отбирать произведения для публикации конъюнктура Появление имперского сознания повлекло за собой стремление понастоящему узнать самое себя свою сущность. Итог: сборник Кирши Данилова Древние российские стихотворения 1804 в котором...
40510. Школа заимствования в русской фольклористике 20 KB
  Принципы Произведения одни и те же у разных народов. Причины сходства: одна прародина всех народов и всех фольклорных текстов обмен фольклорными богатствами в результате контакта между народами Недостатки Народы только и делают что заимствуют друг у друга фольклор = у народов нет своих национальных корней но это преувеличение.
40511. Радищев и фольклор 20.5 KB
  Радищев и фольклор. Концепция Радищева вершина русской фольклористики XVIII века. Радищев как и многие другие интересуется фольклором. Фольклор выражает идеологию и психологию коллективное бессознательное народа.
40512. Анализ волшебно-сказочного сюжета по выбору студента 36.5 KB
  Фундаментальная оппозиция свой чужой определяет как известно всю поэтику и проблематику волшебной сказки. При этом оппозиция братьев осложняется тем что Иванцаревич в первой части сказки по терминологии В. В результате возникает как уже отмечалось подробно разработанная на разных уровнях система отражающая все важные для фольклорной сказки аспекты природный природносоциальный семейнородственный и родственный в смысле учения Н. Противоречие между метафизическим и бытовым уровнями мировосприятия отличающимися друг от друга как...
40513. Былины Киевского цикла 20 KB
  Три типа персонажей: князь Владимир богатыри враги Князь Владимир центральный персонаж но богатырь главный герой.