ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 29.11.2023
Просмотров: 41
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Доклад
Дисциплина: Информатика_______________________________________
Тема: «Система программирования»
Подготовила:
студентка гр.
Проверил:
2022
1. Понятие и состав системы программирования
Для удобной разработки программ существуют специальные средства их создания, – системы программирования, которые обеспечивают весь цикл работы с программой – от ее разработки до выполнения и получения необходимых результатов.
Системной программирования называется комплекс программных средств (инструментов, библиотек), предназначенных для поддержки разработки программного продукта на протяжении всего жизненного цикла этого продукта.
Система программирования представляет собой интегрированную среду разработки программ, которая содержит:
- редактор текста для создания и редактирования текста программы на языке высокого уровня, т.е. формирования исходного модуля (при сохранении текста программы в файле каждая система программирования по умолчанию дает свое стандартное расширение имени файла, например, системы на основе языка Паскаль дают расширение. pas, системы на основе языка Си++ – расширение. срр);
- компилятор для перевода текста программы с языка высокого уровня в машинные коды, т. е. формирование объектного модуля (например, в системе TurboPascal – файл с расширением. tpu; в системе на основе языка Си++ – файл с расширением .obj);
- компоновщик для подключения объектных кодов стандартных команд и формирования загрузочного модуля (файл с расширением. ехе);
- загрузчик для выполнения загрузочного модуля программы.
Все программы состоят из кода и данных, и каким-либо образом концептуально организованы вокруг своего кода и/или данных.
Основные парадигмы (технологии) программирования определяют способ построения программ:
• процедурно-ориентированная (где программа – это ряд последовательно выполняемых операций, причём код воздействует на данные);
• объектно-ориентированная (где программа состоит из объектов – программных сущностей, объединяющих в себе код и данные, взаимодействующих друг с другом через определённые интерфейсы, при этом доступ к коду и данным объекта осуществляется только через сам объект, т.е. данные определяют выполняемый код);
• функциональная (программа как набор функций и выполнение программы – это вычисление которые начинаются с выбора главной функции и продолжаются за счёт вызова других функций);
• логическая (набор логических утверждений, где есть утверждения, истинность которых мы не знаем и на основе имеющихся утверждений происходит доказательство или опровержение истинности нового утверждения).
2. Общая структура и этапы развития систем программирования
Для сознательного понимания назначения составляющих системы программирования опишем этапы процесса разработки программы, связанные с использованием компьютера.
Редактор исходного кода. Вводим текст разработанной программы, которую называют исходным кодом, в компьютер и храним в памяти. Для этого система программирования имеет редактор текста, который обеспечивает ввод и редактирование исходного кода.
Компиляция и интерпретация. После введения программы и исправления ошибок, которые могли произойти во время ввода, осуществляется преобразование программы с языка программирования высокого уровня в двоичный код. Такое преобразование осуществляется с помощью транслятора программ.
Различают два типа трансляторов: компиляторы и интерпретаторы. В процессе интерпретации исходных текстов программ каждая команда (инструкция) последовательно превращается в двоичный код и сразу выполняется – на экране высвечивается результат ее выполнения. После завершения одной команды выполняется следующая и так далее до последней команды. Но результат преобразования не сохраняется, и каждый запуск программы начинается сначала. В процессе компиляции осуществляется преобразование всего текста программного кода в двоичный код. Полученную после компиляции программу называют объектным модулем. Такая программа еще не готова к выполнению. Исходный код обычно содержит ссылки на другие модули (подпрограммы), которые содержатся в библиотеке подпрограмм (например, модуль вычисления квадратного корня). Таким образом, к программному модулю нужно добавить коды необходимых подпрограмм, чтобы подготовить программу для исполнения.
Компоновка. После компиляции компоновщик (редактор связей) «склеивает» отдельные двоичные модули в единую программу, которая называется исполняемой программой. После компиляции программа представлена двоичными символами 1 и 0 и готова к исполнению на компьютере.
Отладка и тестирование. Полученная программа, даже если она выполняется, не гарантирует, что нет логических ошибок. Она может выполняться, но результат исполнения может быть неправильным. Поэтому нужно провести тестирование (испытания) программы на предмет выявления и устранения в ней логических ошибок.
На этом этапе применяется отладчик программ, который позволяет пошагово анализировать программу. Отладчик позволяет выполнять трассировку программы, устанавливать и удалять контрольные точки в программах, условия приостановления выполнения программы и тому подобное.
Создание переносимых программ. Описанный выше процесс разработки программ является классическим для процедурных языков программирования. Для программ, разработанных языком ООП, есть отличия. Их сущность заключается в том, что после компиляции создается не машинный, а промежуточный код, так называемый байт-код. С помощью специального программного обеспечения он затем превращается в машинный.
Таким образом, большинство систем программирования включают в свой состав ограниченный набор компонентов.
На рис.1 приведена общая структура современной системы программирования. На ней выделены все основные составляющие современной системы программирования и их взаимосвязь. Отдельные составляющие разбиты по группам в соответствии с этапами развития средств разработки. Эти группы отражают все этапы развития от отдельных программных компонентов до цельной системы программирования.
Рис. 1 Общая структура и этапы развития систем программирования
Современная система программирования – это достаточно сложный комплекс различных программно-технических средств. Все они служат цели создания прикладного и системного программного обеспечения.
Тенденция такова, что все развитие систем программирования идет в направлении неуклонного повышения их дружественности и сервисных возможностей. Это связано с тем, что на рынке в первую очередь лидируют те системы программирования, которые позволяют существенно снизить трудозатраты, потребные для создания программного обеспечения на этапах жизненного цикла, связанных с кодированием, тестированием и отладкой программ. Показатель снижения трудозатрат в настоящее время считается более существенным, чем показатели, определяющие эффективность результирующей программы, построенной с помощью системы программирования.
3. Примеры языков и систем программирования
Наиболее известными языками программирования, на сегодняшний день, являются:
- Assembler. Он не новый, однако научит пользователей многим вещам, скрытым в других языках.
- C. Один наиболее часто используемых в мире. Именно этот язык дает самый полный контроль над машиной. Он используется для кодирования операционных систем.
- Cobol. Это старый язык. Он, как правило, сложнее в использовании, чем другие. Однако по историческим причинам он по-прежнему широко используется в банковском деле, финансах и страховании.
- Fortran. Он все еще востребован в области научных вычислений, для которого и был разработан. Хотя синтаксис этого языка регулярно обновляется, ощущается его возраст. Кроме того, некоторые программные библиотеки в Fortran никогда не были сопоставлены с точки зрения эффективности.
- Java. Имеет особенность компиляции в байт-код, который затем интерпретируется виртуальной машиной. Это значительно упрощает создание программ для использования на нескольких платформах операционных систем. Например, Java является шлюзом для кодирования приложения для Android.
- Perl. Это язык, который в основном ценится в мире Linux и Unixoids. Он эффективен для создания небольших, но очень мощных приложений с командной строкой. Однако Perl не очень подходит для создания графических интерфейсов.
- PHP. Во многом доминирует в мире веб-программирования.
- Python. Этот язык рекомендуется начинающим.
- Swift. Это довольно молодой язык, подвержен изменениям и корректировкам, подходит для продуктов Apple. В ближайшие годы он вполне может стать основным продуктом программирования приложений iOS и OSX.
На протяжении всей истории вычислений было предпринято сотни попыток сделать языки программирования на компьютере такими, как письменный английский – легко читать и легко понять. PASCAL является результатом одного из таких усилий.
Сегодня все чаще используются интегрированные среды программирования, которые обеспечивают работу с несколькими языками. Такими системами являются, например, IntelliJ IDEA, Eclipse. Вариант UltimateEdition системы IDEA обеспечивает работу с языками программирования Java, PHP, Python.