Лекция 3_Программные средства.pptx
- Количество слайдов: 45
Программные средства реализации информационных процессов Лекция 3
План Классификация программного обеспечения Системное программное обеспечение Инструментарий технологии программирования Прикладное программное обеспечение Литература
Литература Романова Ю. Д. Информатика и информационные технологии : учеб. пособие / Ю. Д. Романова, П. А. Музычкин, И. Г. Лесничая, В. И. Шестаков, И. В. Миссинг; под ред. Ю. Д. Романовой. – 4 -е изд. , перераб. и доп. – М. : Эксмо, 2010. – с. 116 -121. Акулов О. А. , Медведев Н. В. Информатика: базовый курс / О. А. Акулов, Н. В. Медведев. 2 -е изд. , испр. и доп. – М. : Омега-Л, 2005. – с. 236 -261. Статья «Программное обеспечение» в свободной энциклопедии «Википедия» // http: //ru. wikipedia. org/ План
Классификация программного обеспечения Программное обеспечение (ПО) – это совокупность программ, выполняемых вычислительной системой, и необходимых для их эксплуатации документов. Программный продукт – программа или комплекс взаимосвязанных программ для решения определенной задачи массового спроса, подготовленный к реализации как любой вид промышленной продукции.
Классификация программного обеспечения Программные продукты можно классифицировать по разным признакам. Наиболее общей является классификация, в которой основополагающим признаком служит сфера (область) использования программных продуктов: • аппаратная часть компьютеров и сетей ЭВМ; • технология разработки программ; • функциональные задачи различных предметных областей. Исходя из этого, выделяют три класса программных продуктов: • системное ПО; • инструментарий технологии программирования; • прикладное ПО. План
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютеров и сетей ЭВМ. Системное программное обеспечение тесно связано с типом компьютера, является его неотъемлемой частью и имеет общий характер применения, независимо от специфики предметной области решаемых с помощью ЭВМ задач.
Системное программное обеспечение Структура системного программного обеспечения
Базовое системное программное обеспечение BIOS (Basic Input/Output System – базовая система вводавывода) – совокупность программ, предназначенных для автоматического тестирования устройств после включения питания компьютера, загрузки ОС в оперативную память и обеспечения взаимодействия ОС и приложений с различными устройствами компьютера.
Базовое системное программное обеспечение Операционная система (ОС) предназначена для управления выполнением пользовательских программ, планирования и управления вычислительными ресурсами ЭВМ. Она выполняет роль связующего звена между аппаратурой компьютера, выполняемыми программами и пользователем. ОС обычно хранится во внешней памяти компьютера – на диске. При включении компьютера она считывается с диска и размещается в оперативной памяти. Этот процесс называется загрузкой ОС.
Базовое системное программное обеспечение В основные функции ОС входит: осуществление диалога с пользователем; запуск программ на выполнение; планирование и организация процесса обработки информации; распределение ресурсов вычислительной системы (оперативной памяти, процессора, внешних устройств).
Базовое системное программное обеспечение ОС для компьютеров делятся на: одно- и многозадачные (в зависимости от числа одновременно запускаемых и выполняемых прикладных процессов); одно- и многопользовательские (в зависимости от числа пользователей одновременно работающих с ОС); несетевые и сетевые, обеспечивающие работу локальной компьютерной сети. Наиболее распространенные ОС: Windows (XP, Vista, 7), Unix, Linux.
Базовое системное программное обеспечение Каждая ОС имеет свой командный язык, который позволяет пользователю выполнять те или иные действия: • обращаться к каталогам (папкам); • выполнять разметку внешних носителей; • запускать программы и др. Анализ и выполнение команд пользователя, включая загрузку программ из файлов в оперативную память и их запуск, осуществляет командный процессор операционной системы.
Базовое системное программное обеспечение Файловая система (file system) — порядок, определяющий способ организации, хранения и именования данных на носителях информации. Файловая система определяет формат содержимого и способ физического хранения информации, которую группируют в виде файлов. Файловая система определяет размер имени файла (папки), максимальный возможный размер файла, набор атрибутов файла и др. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов. Когда прикладная программа обращается к файлу, она знает только имя, размер и атрибуты файла. Эти данные прикладная программа получает от драйвера файловой системы. Куда и как будет записан файл определяет файловая система.
Базовое системное программное обеспечение С точки зрения ОС, весь диск представляет собой набор кластеров (логических единиц хранения данных, как правило, размером 512 байт и больше). Драйверы файловой системы организуют кластеры в файлы и каталоги (которые также являются файлами, содержащими список файлов в этом каталоге). Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные. Однако файловая система не обязательно напрямую связана с физическим носителем информации. Существуют, например, сетевые файловые системы, которые являются лишь способом доступа к файлам, находящимся на удалённом компьютере.
Базовое системное программное обеспечение Некоторые дисковые файловые системы: FAT, NTFS, EFS (используются в ОС корпорации Microsoft); ext 3, ext 4, Next 3 (используются в различных версиях Linux).
Базовое системное программное обеспечение Операционные оболочки – специальные программы, предназначенные для облегчения общения пользователя с командами ОС. Операционные оболочки могут иметь текстовый или графический интерфейс конечного пользователя. Наиболее популярные оболочки: Norton Commander, FAR, Windows Commander, Norton Navigator, XTree Gold и др.
Сервисное системное программное обеспечение Расширением базового ПО является набор сервисного, дополнительно устанавливаемого ПО. В сервисное ПО входят: Программы контроля, тестирования и диагностики, которые используются для проверки правильности функционирования устройств компьютера и для обнаружения неисправностей в процессе эксплуатации; эти программы указывают причину и место неисправности. Программы-драйверы, которые расширяют возможности ОС по управлению устройствами ввода-вывода, оперативной памятью и др. ; с помощью драйверов возможно подключение к компьютеру новых устройств или нестандартное использование имеющихся. Далее…
Сервисное системное программное обеспечение Программы-упаковщики (архиваторы) позволяют записывать информацию на диск более плотно, а также объединять копии нескольких файлов в один архивный файл. Антивирусные программы предназначены для предотвращения заражения и ликвидации последствий заражения компьютерными вирусами. Программы обслуживания дисков предназначены для оптимизации и контроля качества дискового пространства, восстановления информации, форматирования, защиты данных, записи CD, DVD и др. Программы обслуживания сети, коммуникационные программы, организующие обмен информацией между компьютерами.
Сервисное системное программное обеспечение Многие из этих программ называют утилитами. Утилита – это программа, служащая для выполнения вспомогательных операций обработки данных или обслуживания компьютера (диагностики, тестирования, оптимизации использования дискового пространства др. ). Часть утилит входит в состав ОС, другая часть функционирует автономно.
Сервисное системное программное обеспечение Компьютерные утилиты можно разделить на три группы: 1. Утилиты сервисного обслуживания компьютера (дефрагментация дисков, проверка и исправление структуры разделов жесткого диска, исправление системных зависимостей, тонкая настройка системы и др. ). Одним из представителей данной группы утилит является пакет Norton Utilities от компании Symantec.
Сервисное системное программное обеспечение 2. 3. Утилиты расширения функциональности. Расширяют функциональность существующих прикладных или системных средств, например, утилиты безопасного (невосстановимого) удаления файлов, переконвертирования файлов различных форматов, резервного копирования, системного менеджмента (занимаются расширенным управлением системой, таким как: работа с разделами дисков, перепрограммирование BIOS и др. ). Информационные утилиты. Включают в себя мониторы, бенчмарки (тесты производительности), и утилиты общей (статической) информации. План
Инструментарий технологии программирования – совокупность программ и программных комплексов предназначенных для разработки, отладки и внедрения программного обеспечения. Инструментарий технологии программирования включает в себя языки, системы программирования, инструментальные среды пользователей и др.
Инструментарий технологии программирования Программирование — создание компьютерных программ с помощью языков программирования. В узком смысле слова, программирование рассматривается как кодирование алгоритмов на заданном языке программирования. В более широком смысле программирование — процесс создания программ, то есть разработка программного обеспечения.
Инструментарий технологии программирования Технология программирования включает в себя: Анализ задачи. Проектирование — разработку комплекса алгоритмов. Кодирование и компиляцию — написание исходного текста программы и преобразование его в исполняемый код с помощью компилятора. Тестирование и отладку — выявление и устранение ошибок в программах. Испытания и сдачу программ. Сопровождение программ.
Инструментарий технологии программирования Существуют следующие основные методологии разработки программного обеспечения: • Структурное программирование. • Объектно-ориентированное программирование.
Инструментарий технологии программирования В соответствии с методологией структурного программирования: 1. Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций: • последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы; • ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия; • цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
Инструментарий технологии программирования В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается.
Инструментарий технологии программирования 2. Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.
Инструментарий технологии программирования 3. Разработка программы ведётся пошагово, методом «сверху вниз» . Сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент. Вместо настоящих, работающих подпрограмм, в программу вставляются «заглушки» , которые ничего не делают. Полученная программа проверяется и отлаживается. После того, как программист убедится, что подпрограммы вызываются в правильной последовательности (то есть общая структура программы верна), подпрограммы-заглушки последовательно заменяются на реально работающие, причём разработка каждой подпрограммы ведётся тем же методом, что и основной программы. Разработка заканчивается тогда, когда не останется ни одной «заглушки» , которая не была бы удалена.
Инструментарий технологии программирования Объектно-ориентированное программирование (ООП) — методология программирования, в которой основными являются понятия «объект» и «класс» . Основные принципы ООП: абстракция, наследование, инкапсуляция и полиморфизм. Абстракция (abstraction) – характеристика сущности, которая отличает ее от других сущностей. Абстракция применяется для определения фундаментальных понятий ООП, таких как класс и объект.
Инструментарий технологии программирования Класс представляет собой абстракцию совокупности реальных объектов, которые имеют общий набор свойств и обладают одинаковым поведением. Классы организовывают в иерархические структуры. Объект в контексте ООП рассматривается как экземпляр соответствующего класса. Объекты, которые не имеют идентичных свойств или не обладают одинаковым поведением, по определению, не могут быть отнесены к одному классу.
Инструментарий технологии программирования Принцип, в соответствии с которым знание о наиболее общей категории разрешается применять для более частной категории, называется наследованием. Инкапсуляция характеризует сокрытие отдельных деталей внутреннего устройства классов от внешних по отношению к нему объектов или пользователей. Полиморфизм — возможность объектов с одинаковой спецификацией иметь различную реализацию.
Инструментарий технологии программирования Язык программирования – формализованный язык для описания алгоритма решения задачи на компьютере. Языки программирования делятся на языки низкого и высокого уровня: • Если язык программирования ориентирован на конкретный тип процессора и учитывает его особенности, то он называется языком программирования низкого уровня. Таким языком является ассемблер. • Языки программирования высокого уровня не учитывают особенностей конкретных компьютерных архитектур, например, Basic, Pascal, Си и др.
Инструментарий технологии программирования Программа, подготовленная на языке программирования высокого уровня, проходит этап трансляции. Трансляция может выполняться с использованием средств компиляторов или интерпретаторов. Компиляторы транслируют всю программу, но без ее выполнения. При компиляции происходит преобразование исходного кода программы в объектный код, который обрабатывается редактором связей. Редактор связей – специальная программа, обеспечивающая построение загрузочного модуля, пригодного к выполнению.
Инструментарий технологии программирования Интерпретаторы выполняют пооператорную обработку и выполнение программы. Только после того, как текущий оператор успешно выполнен, интерпретатор перейдет к следующему.
Инструментарий технологии программирования Система программирования (programming system) – это комплекс средств, предназначенных для создания и эксплуатации программ на конкретном языке программирования на ЭВМ определенного типа. Системы программирования включают: текстовый редактор, транслятор, редактор связей, набор библиотек, отладчик, средства оптимизации кода программ и др. Многие системы программирования, например, Delphi, C++ Builder являются средами быстрого проектирования (Rapid Application Development, RAD-среды). Они предоставляют все необходимые элементы оформления и управления (поля, кнопки, списки и др. ) с помощью готовых визуальных компонентов. Такое программирование называется визуальным.
Прикладное программное обеспечение Прикладное ПО предназначено для решения функциональных задач и делится на следующие основные классы: Пакеты общего назначения: текстовые редакторы, электронные таблицы (табличные процессоры), системы управления базами данных (СУБД), пакеты презентационной графики, интегрированные пакеты (например, MS Office, Open Office. org, Borland Office и др. ). Проблемно-ориентированные пакеты: пакеты автоматизированного бухгалтерского учета, финансовой деятельности, управления персоналом (кадровый учет), управления производством и др. (например, 1 C: Бухгалтерия, 1 С: Управление торговлей, Галактика и др. ). Далее…
Прикладное программное обеспечение Методо-ориентированные пакеты: программные продукты, обеспечивающие математические, статистические методы, методы сетевого планирования и другие методы решения задач (например, Math. CAD, Matlab, MS Project и др. ). Офисные пакеты: органайзеры (планировщики), программыпереводчики, средства проверки орфографии и распознавания текста, коммуникационные пакеты (браузеры, средства создания WWW-страниц). Примерами программных средств данного класса являются: MS Outlook, Polyglossum, Fine Reader, MS Internet Explorer, MS Share. Point Designer и др. Пакеты автоматизированного проектирования предназначены для поддержания работы конструкторов и технологов, связанных с разработкой чертежей, схем, диаграмм, графическим моделированием, конструированием и пр. (например, Auto. CAD, Компас, Archi. CAD и др. ). Далее…
Прикладное программное обеспечение Издательские системы предназначены для автоматизации издательской деятельности, осуществляют: форматирование и редактирование текстов, компьютерную верстку печатной страницы, подготовку и монтирование графики и др. (например, Adobe In. Design, Adobe Photoshop, Corel. DRAW и др. ). Системы искусственного интеллекта реализуют отдельные функции интеллекта человека. К этому классу относятся экспертные системы и системы распознавания речи. Программные средства мультимедиа. Основное назначение программных продуктов мультимедиа – создание и использование аудио- и видеоинформации для расширения информационного пространства пользователя (Microsoft Silverlight, Multimedia Viewer Kit, Adobe Flash и др. ).
Базы данных и системы управления базами данных База данных – это совокупность хранимых в памяти ЭВМ и специальным образом организованных взаимосвязанных данных, отображающих состояние предметной области. Иногда под базой данных понимают совокупность набора данных и программ обслуживания. Система управления базами данных (СУБД) – это комплекс программных и языковых средств, необходимых для создания баз данных, поддержки их в актуальном состоянии и организации поиска в них необходимой информации. СУБД можно разделить на настольные, рассчитанные на одного пользователя (MS Access, Fox. Pro, d. Base и др. ), и серверные (MS SQL Server, Oracle и др. ).
Базы данных и системы управления базами данных Каждая СУБД работает с определенной моделью данных. Под моделью данных понимается способ из взаимосвязи. Существуют различные модели данных: иерархическая, сетевая, реляционная, объектно-ориентированная. Наиболее распространенной в настоящее время является реляционная модель данных. Реляционная модель ориентирована на организацию данных в виде двумерных отношений (таблиц).
Базы данных и системы управления базами данных Каждое отношение обладает следующими свойствами: 1). Каждый элемент отношения – один элемент данных. 2). Все элементы в столбце однородные, т. е. имеют одинаковый тип (текстовый, числовой, логический и т. д. ). 3). Каждый столбец имеет уникальное имя. 4). Одинаковые строки отсутствуют. 5). Порядок следования строк и столбцов может быть произвольным.
Базы данных и системы управления базами данных Например: Информации о студенте (отношение СТУДЕНТ).
Базы данных и системы управления базами данных Столбцы отношения называются атрибутами, им присваиваются имена. В отношении всегда должен присутствовать атрибут (или набор атрибутов), однозначно определяющий каждую строку отношения. Такой атрибут (или набор атрибутов) называется первичным ключом отношения. В зависимости от количества атрибутов, входящих в ключ, различают простые (содержит один атрибут) и составные ключи (содержат несколько атрибутов). В отношении СТУДЕНТ в первичный ключ может быть включен атрибут «№ студенческого билета» .
Базы данных и системы управления базами данных В реляционной модели данные представляются в виде совокупности взаимосвязанных отношений. Различают следующие типы связей: • один к одному – каждой строке одного отношения соответствует одна строка другого отношения; • один ко многим – каждой строке одного отношения может соответствовать несколько строк другого (подчиненного) отношения. План