6.1. Что такое программное обеспечение? 6.2. Как классифицируется программное обеспечение? 6.3.
Какие программы называют прикладными?
Программное обеспечение — неотъемлемая часть компьютерной системы. Оно является логическим родолжением технических средств. Сфера применения конкректного компьютера определяется созданным для него ПО.
Сам по себе компьютер не обладает знаниями ни в одной области применения. Все эти знания сосредоточены в выполняемых на компьютерах программах. |
Программное обеспечение современных компьютеров включает миллионы программ — от игровых до научных.
6.2. Как классифицируется программное обеспечение?
В первом приближении все программы, работающие на компьютере, можно условно разделить на три категории (рис. 6.1):
- управление ресурсами компьютера;
- создание копий используемой информации;
- проверка работоспособности устройств компьютера;
- выдача справочной информации о компьютере и др.;
Вебинары NEKTA. Современный подход к учёту энергоресурсов
Рис. 6.1. Категории программного обеспечения
При построении классификации ПО нужно учитывать тот факт, что стремительное развитие вычислительной техники и расширение сферы приложения компьютеров резко ускорили процесс эволюции программного обеспечения.
Если раньше можно было по пальцам перечислить основные категории ПО — операционные системы, трансляторы, пакеты прикладных программ, то сейчас ситуация коренным образом изменилась.
Развитие ПО пошло как вглубь (появились новые подходы к построению операционных систем, языков программирования и т.д.), так и вширь (прикладные программы перестали быть прикладными и приобрели самостоятельную ценность).
Соотношение между требующимися программными продуктами и имеющимися на рынке меняется очень быстро. Даже классические программные продукты, такие, как операционные системы, непрерывно развиваются и наделяются интеллектуальными функциями, многие из которых ранее относились только к интеллектуальным возможностям человека.
Кроме того, появились нетрадиционные программы, классифицировать которые по устоявшимся критериям очень трудно, а то и просто невозможно, как, например, программа — электронный собеседник.
На сегодняшний день можно сказать, что более или менее определённо сложились следующие группы программного обеспечения:
- операционные системы и оболочки ;
- системы программирования (трансляторы, библиотеки подпрограмм, отладчики и т.д.);
- инструментальные системы;
- интегрированные пакеты программ ;
- динамические электронные таблицы ;
- системы машинной графики;
- системы управления базами данных ( СУБД );
- прикладное программное обеспечение.
Структура программного обеспечения показана на рис. 6.2. Разумеется, эту классификацию нельзя считать исчерпывающей, но она более или менее наглядно отражает направления совершенствования и развития программного обеспечения. 6.3. Какие программы называют прикладными?
Программное обеспечение компьютера
Прикладная программа — это любая конкретная программа, способствующая решению какой-либо задачи в пределах данной проблемной области. |
Например, там, где на компьютер возложена задача контроля за финансовой деятельностью какой-либо фирмы, прикладной будет программа подготовки платежных ведомостей.
Прикладные программы могут носить и общий характер, например, обеспечивать составление и печатание документов и т.п.
В противоположность этому, операционная система или инструментальное ПО не вносят прямого вклада в удовлетворение конечных потребностей пользователя.
Прикладные программы могут использоваться либо автономно, то есть решать поставленную задачу без помощи других программ, либо в составе программных комплексов или пакетов.
Источник: www.examen.ru
2.1.2. СРЕДСТВА ДЛЯ СОЗДАНИЯ ПРИЛОЖЕНИЙ
Язык программирования – формализованный язык для описания алгоритма решения задачи на компьютере. Языки программирования можно условно разделить на классы:
· машинные языки – языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);
· машинно-ориентированные языки – языки программирования, которые отражают структуру конкретного типа компьютера (ассемблеры);
· алгоритмические языки – не зависящие от архитектуры компьютера языки программирования для отражения структуры алгоритма (Паскаль, Фортран, Бейсик и др.);
· процедурно-ориентированные языки – языки программирования, где имеется возможность описания программы как совокупности процедур (подпрограмм);
· проблемно-ориентированные языки – языки программирования, предназначенные для решения задач определенного класса (Лисп, РПГ, Стимула и др.);
· интегрированные системы программирования.
Другой классификацией языков программирования является их деление на языки, ориентированные на реализацию основ структурного программирования (Си, QuickBasic) и объектно-ориентированные языки, поддерживающие понятие объектов и их свойств и методов обработки (Visual Basic, Delphi).
Программа, подготовленная на языке программирования, проходит этап трансляции, когда происходит преобразование исходного кода программы в объектный код, который далее пригоден к обработке редактором связей. Редактор связей – специальная программа, обеспечивающая построение загрузочного модуля, пригодного к выполнению.
Трансляция может выполняться с использованием средств компиляторов или интерпретаторов. Компиляторы транслируют всю программу, но без ее выполнения.
Интерпретаторы, в отличие от компиляторов, выполняют пооператорную обработку и выполнение программы.
Существуют специальные программы, предназначенные для трассировки и анализа выполнения других программ, так называемые отладчики (debugger). Лучшие отладчики позволяют осуществить трассировку (отслеживание выполнения программы в пооператорном варианте), идентификацию места и вида ошибок в программе, «наблюдение» за изменением значений переменных, выражений и т.п.
Системы программирования включают:
· интегрированную среду разработчика программ;
· средства оптимизации кода программ;
· набор библиотек (возможно с исходными текстами программ);
· сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;
· документатор исходного кода программы;
· систему поддержки и управления проектом программного комплекса.
Средства поддержки проектов – новый класс программного обеспечения, предназначен для следующего:
· отслеживания изменений, выполненных разработчиками программ;
· поддержки версий программы с автоматической разноской изменений;
· получения статистики о ходе работ проекта.
Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, такими, как:
· библиотека функций, процедур, объектов и методов обработки;
· конструкторы экранных форм и отчетов;
· языки запросов высокого уровня;
· языки манипулирования данными;
· конструкторы меню и многое другое.
Дальнейшим развитием локальных средств разработки программ, которые объединяют набор средств для комплексного их применения на всех технологических этапах создания программ, являются интегрированные программные среды разработчиков. Основное назначение инструментария данного вида – повышение производительности труда программистов, автоматизация создания кодов программ, обеспечивающих интерфейс пользователя графического типа, разработка приложений для архитектуры клиент-сервер, запросов и отчетов.
Категории
- Безопасность жизнедеятельности в техносфере (14)
- Бухгалтерский учет, анализ и аудит (5)
- Гуманитарные науки (56)
- Естественные науки (20)
- Информатика и вычислительная техника (27)
- Медицина (3)
- Менеджмент организации (20)
- Науки о человеке и обществе (2)
- Общетехнические дисциплины (18)
- Прикладная информатика в экономике (3)
- Программное обеспечение вычислительной техники и автоматизированных систем (2)
- Прочее (14)
- Социальная работа (26)
- Технология машиностроения (9)
- Финансы и кредит (25)
- Электротехника и промышленная электроника (3)
- Юриспруденция (28)
Свежие записи
- 8.13 Правоприменительная деятельность и средства массовой информации
- 8.12. Психологическая характеристика деятельности инспектора ГИБДД
- 8.11. Психологическая характеристика деятельности участкового инспектора
- 8.10. Психологическая характеристика деятельности инспектора ОБЭП
- 8.9. Психологическая характеристика деятельности инспектора таможни
Материал представлен на сайте исключительно в ознакомительных целях.
Все права принадлежат авторам этих материалов.
Источник: libraryno.ru
1 — 13 / Билет 3
К базовому программному обеспечению относятся локальные и сетевые операционные системы (Windows, Unix, Solaris, OS/2, Linux и др.), а также сервисные средства для расширения возможностей операционных систем, обеспечения работоспособности компьютеров и выполнения процедур обслуживания АИС (антивирусные программы, архиваторы файлов, утилиты для тестирования компьютеров и сетей и т.п.).
Инструментальные средства предназначены для изготовления новых программ. Это алгоритмические языки, интериретаторы и колипляторы к ним.
Прикладные программные средства включают:
ПС общего назначения (офисные, коммуникаций, мультимедиа, издательские системы, переводчики и пр.).
Методо-ориентированные ПС (статистика, бухгалтерский учет, планирование, управление проектами, экспертные системы, искусственный интеллект и др.).
Проблемно-ориентированные ПС (локальные, комплексные, интегрированные, корпоративные и др.).
В информационных технологиях экономических систем широкое распространение получили офисные программы, включающие: табличные процессоры; текстовые процессоры; СУБД; интегрированные пакеты и пр.
Система программирования – это комплекс средств, предназначенный для создания и эксплуатации программ на конкретном языке программирования на ЭВМ определенного типа.
Средства для создания программ
Традиционными средствами разработки программ являются алгоритмические (процедурные) языки программирования. Для создания программы на выбранном языке программирования нужно иметь следующие компоненты:
Текстовый редактор – это редактор, который позволяет набрать текст программы на языке программирования. Для этой цели можно использовать любые текстовые редакторы, но лучше пользоваться специализированным текстовым редактором.
Транслятор – это основа систем программирования. Трансляторы языков программирования, т. е. программы, обеспечивающие перевод исходного текста программы на машинный язык (объектный код), бывают двух типов: интерпретаторы и компиляторы.
Интерпретатор — это транслятор, который обеспечивает последовательный синхронный «перевод» и выполнение каждой строки программы, причем при каждом запуске программы на выполнение вся процедура полностью повторяется. Достоинством интерпретатора является удобство отладки программы в интерактивном режиме, а недостатком — малая скорость работы.
Компилятор – это транслятор, который исходный текст программы переводит в машинный код. Если в тексте программы нет синтаксических ошибок, то машинный код будет создан. Но это, как правило, не работоспособный код, т.к. в этой программе не хватает подпрограмм стандартных функций, поэтому компилятор выдает промежуточный код, который называется объектным кодом и имеет расширение . obj.
Редактор связей (сборщик) – это программа, которая объединяет объектные модули отдельных частей программы и добавляет к ним стандартные модули подпрограмм стандартных функций (файлы с расширением .
lib), которые содержатся в библиотеках, поставляемых вместе с компилятором, в единую программу, готовую к исполнению, т.е. создает исполнимый .
exe файл. Этот файл имеет самостоятельное значение и может работать под управлением той (или такой же) операционной системы, в которой он создан.
Источник: studfile.net
Назначение систем программирования
Для удобной разработки программ существуют специальные средства их создания, — системы (среды) программирования, которые обеспечивают весь цикл работы с программой — от ее разработки до выполнения и получения необходимых результатов.
Система программирования — это комплекс программных средств, предназначенных для автоматизации процесса подготовки и выполнения программ пользователя.
Назначение и состав систем программирования
Рассмотрим основные составляющие системы программирования:
- Редактор текста
- Язык программирования
- Библиотека подпрограмм
- Редактор связей (компоновщик)
- Транслятор
- Отладчик
Для сознательного понимания назначения составляющих системы программирования опишем этапы процесса разработки программы, связанные с использованием компьютера.
Редактор исходного кода
Вводим текст разработанной программы, которую называют исходным кодом, в компьютер и храним в памяти. Для этого система программирования имеет редактор текста, который обеспечивает ввод и редактирование исходного кода.
Компиляция и интерпретация
После введения программы и исправления ошибок, которые могли произойти во время ввода, осуществляется преобразование программы с языка программирования высокого уровня в двоичный код.
Такое преобразование осуществляется с помощью транслятора программ.
Различают два типа трансляторов: компиляторы и интерпретаторы.
В процессе интерпретации исходных текстов программ каждая команда (инструкция) последовательно превращается в двоичный код и сразу выполняется — на экране высвечивается результат ее выполнения. После завершения одной команды выполняется следующая и так далее до последней команды. Но результат преобразования не сохраняется, и каждый запуск программы начинается сначала.
В процессе компиляции осуществляется преобразование всего текста программного кода в двоичный код. Полученную после компиляции программу называют объектным модулем. Такая программа еще не готова к выполнению.
Исходный код обычно содержит ссылки на другие модули (подпрограммы), которые содержатся в библиотеке подпрограмм (например, модуль вычисления квадратного корня). Таким образом, к программному модуля нужно добавить коды необходимых подпрограмм, чтобы подготовить программу для исполнения.
Компилируемая программы выполняются быстрее интерпретируемых. Режим интерпретации нуждается в дополнительной основной памяти, поскольку интерпретатор должен все время храниться вместе с кодом. Но интерпретация в работе удобнее. Особенно для программистов, которые только начинают работать с системами программирования, так контролируется результат каждой команды.
Компоновка
После компиляции компоновщик (редактор связей) «склеивает» отдельные двоичные модули в единую программу, которая называется исполняемой программой. Этот процесс представлены на схеме:
Исходный код программы -> компилятор -> объектный модуль -> библиотека подпрограмм -> редактор связей -> выполняемая программа
Для дальнейшего выполнения программного кода, компилятор не нужен. Итак, после компиляции программа представлена двоичными символами 1 и 0 и готова к исполнению на компьютере.
Отладка и тестирование
Полученная программа, даже если она выполняется, не гарантирует, что нет логических ошибок. Она может выполняться, но результат исполнения может быть неправильным. Поэтому нужно провести тестирование (испытания) программы на предмет выявления и устранения в ней логических ошибок.
Тестирование — достаточно ответственный этап. В крупных IT-компаниях над разработкой программ, которые называют проектами, работают десятки и даже сотни программистов разных направлений. Одни из них разрабатывают проекты, другие занимаются тестированием программ, экономическим обоснованием и тому подобное.
На этом этапе применяется отладчик программ, который позволяет пошагово анализировать программу. Отладчик позволяет выполнять трассировку программы, устанавливать и удалять контрольные точки в программах, условия приостановления выполнения программы и тому подобное.
Создание переносимых программ
Описанный выше процесс разработки программ является классическим для процедурных языков программирования. Для программ, разработанных языком ООП, есть отличия. Их сущность заключается в том, что после компиляции создается не машинный, а промежуточный код, так называемый байт-код. С помощью специального программного обеспечения он затем превращается в машинный.
Такой подход обусловлен тем, что в Интернете свободно перемещаются данные и программы (апплеты — небольшие программы, предназначенные для передачи через Интернет и выполнения в браузере, совместимом с языком программирования). Их нужно защитить от вирусов и других вредоносных программ, а также реализовать переносимость программ.
Под переносимостью понимают возможность загрузки и выполнения апплета на компьютерах с любым типом процессора, любой операционной системой и браузером, подключен к Интернету. Именно эти проблемы и позволяет решить байт-код.
Понятно, что использование любого промежуточного кода, в том числе и байт-кода, снижает скорость выполнения программ и требует дополнительных аппаратных средств. Впрочем, эти потери незначительны по сравнению с полученным выигрышем. Если бы ООП-программа сразу компилировалась в машинный код, то для каждого компьютера со своим типом процессора необходимо было бы иметь отдельную версию той самой программы, что экономически крайне невыгодно.
Иногда используются так называемые динамические компиляторы. Их сущность заключается в том, что байт-код компилируется в машинный код не весь сразу, а отдельными фрагментами, по мере необходимости. Другие части кода могут выполняться в режиме интерпретации. Тем самым достигается высокая эффективность работы с кодом.
Примеры систем программирования
Системы (среды) программирования часто именуются по названию языка, например среда Pascal, среда Delphi. Иногда название системы содержит префикс, указывающий на разработчика среды: название системы Turbo-C означает, что ее разработчиком является фирма Borland.
Сегодня все чаще используются интегрированные среды программирования, которые обеспечивают работу с несколькими языками. Такими системами являются, например, IntelliJ IDEA, Eclipse. Вариант Ultimate Edition системы IDEA обеспечивает работу с языками программирования Java, PHP, Python.
Некоторые системы программирования поддерживают как режим интерпретации, так и режим компиляции программ.
Далее, в процессе описания языка программирования Python, мы будем применять среду IDLE.
Источник: www.polnaja-jenciklopedija.ru