Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 1 Системы программирования.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
470.53 Кб
Скачать

Раздел 1 Системы программирования

Тема 1.1 Принципы функционирования систем программирования

Структура современной системы программирования

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

На рис. 1 приведена общая структура современной системы программирова­ния. На ней выделены основные составляющие системы программирования и их взаимосвязь. Отдельные составляющие разбиты по группам в соответствии с этапа­ми развития средств разработки.

Рис. 1 – Общая структура систем программирования

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

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

Редактор ресурсов дает возможность разработчику готовить ресурсы пользователь­ского интерфейса для результирующей программы. Как правило, подготовка ресур­сов выполняется в графическом виде (в форме графических образов), а результа­том является описание ресурсов интерфейса на языке описания ресурсов, которое, в свою очередь, может быть обработано с помощью обычного текстового редактора

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

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

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

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

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

В качестве основных тенденций в развитии современных систем программиро­вания следует указать внедрение в них средств разработки на основе так назы­ваемых «языков четвертого поколения» — 4GL (Fourth Generation Languages), а также поддержка систем «быстрой разработки программного обеспечения» — RAD (Rapid Application Development).

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

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

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

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