Программное обеспечение
Программный принцип управления лежит в основе работы всех компьютеров, смысл его заключается в том, что компьютером выполняются действия по предварительно заданной программе. Кроме того, этим принципом обеспечивается универсальное использование компьютера, т.е. в соответствии с выбранной программой в конкретный момент времени решается конкретная задача. После ее выполнения в память загружается другая программа и т.д.
Для обеспечения оптимального решения задач необходимо, чтобы программа была отлажена, имела соответствующую документацию и не требовала доработок. В отношении работы на компьютере часто используется термин программное обеспечение, это именно та составляющая, без которой компьютер представляет собой бесполезную вещь.
Программное обеспечение в наши дни – это сотни тысяч различных программ, предназначенных для обработки разнообразной информации.
Под программным обеспечением (ПО) понимают совокупность всех программ и соответствующей документации, которая обеспечивает возможность использования ЭВМ в интересах пользователей.
Классификация программного обеспечения
Все программное обеспечение делится на 2 большие группы:
- Системное ПО, которое представляет собой совокупность программ, которые обеспечивают работу компьютера.
- Прикладное ПО, которое содержит комплекс программ, позволяющих решать задачи определенного класса в конкретной предметной области.
Системные программы управляют работой вычислительной системы, а также осуществляют выполнение различных вспомогательных функций (копирования, тестирования и пр.)
Системное ПО, в свою очередь, делится на базовое и сервисное.
Базовое ПО состоит из:
- операционных систем;
- оболочек;
- сетевых операционных систем.
Сервисное ПО состоит из программ (утилиты):
- диагностирующих;
- антивирусных;
- обслуживающих носители;
- архиваторов;
- обслуживающих сети.
Прикладное ПО будет работать только при наличии системного.
Прикладные программы называются приложениями.
К ним относятся:
- табличные и текстовые процессоры;
- базы данных;
- экспертные системы;
- интегрированные пакеты;
- графические процессоры;
- обучающие программы;
- программы математических расчетов, моделирования и анализа;
- коммуникационные программы;
- игры.
В особую группу выделяют системы программирования (инструментальные системы), являющиеся частью системного ПО, однако имеющие при этом прикладной характер.
Под системой программирования понимают это совокупность программ, использующихся при разработке, отладке и внедрении новых программных продуктов.
К системам программирования относят:
- трансляторы;
- непосредственную среду разработки программ;
- отладчики;
- библиотеки справочных программ (процедур и функций);
- редакторы связей и др.
Прикладное ПО
Коротко остановимся на наиболее часто встречающемся прикладном ПО.
Редакторы документов являются наиболее широко используемым видом прикладных программ. С их помощью можно быстро и удобно подготавливать документы (использование различных шрифтов символов, абзацев произвольной формы, автоматический перенос слов, возможность делать сноски, вставлять графические объекты, автоматическая нумерация страниц и пр.).
Наиболее известные – Wordpad, Microsoft Word.
Табличные процессоры позволяют работать с информацией различного типа, заключенной в ячейках таблиц (вычислять значения элементов таблицы по указанным формулам, строить по данным таблиц различные графики и пр.).
Наиболее известные - Quatro Pro, Microsoft Excel.
Графические редакторы дают возможность создавать и редактировать изображения с использованием рисования линий, кривых, объектов, раскраской областей экрана, созданием надписей различными шрифтами, обрабатывать изображения со сканеров.
Наиболее известные – Corel Draw, Adobe Photoshop.
В правовых базах данных содержатся тексты нормативных документов и предоставляются возможности получения справки, контекстного поиска, распечатки и пр.
Наиболее известные – Консультант+, Гарант.
Системы автоматизированного проектирования (САПР) осуществляют конструирование и черчение различных механизмов и предметов с помощью компьютера.
Наиболее известные - Компас, AutoCad.
Системы управления базами данных (СУБД) используются для управления большими информационными массивами - базами данных (поиск, ввод, сортировка, выборка записей, составление отчетов и пр.).
Наиболее известные – Clipper, Microsoft Access, Paradox.
Интегрированные системы сочетают в себе возможности СУБД, табличного и текстового процессоров, системы деловой графики и др.).
Наиболее известные – Open Office, Microsoft Office.
Бухгалтерские программы используются для ведения бухгалтерского учета, подготовки финансовой отчетности и финансового анализа деятельности предприятий.
Наиболее известные - Инфо-бухгалтер, 1C: Предприятие.
Вспомогательные программы
Коротко остановимся на основных видах.
Программы-архиваторы позволяют сжимать информацию на дисках и объединять несколько архивных файлов в один.
Наиболее известные –WinZip, WinRar.
Программы для создания резервных копий информации дают возможность периодически копировать важную информацию с жесткого диска на дополнительные носители.
Наиболее известные – Acronis True Image, APBackUp.
Антивирусные программы служат для предотвращения заражения вирусами и ликвидации последствий заражения.
Наиболее известные – DrWeb, Kaspersky Antivirus, Norton Antivirus.
Коммуникационные программы служат для организации обмена информацией между компьютерами путем соединения кабелем их последовательных портов и посредством телефонной сети (при наличии модема).
Наиболее известные – Cute FTP, Venta Fax.
Программы для диагностики компьютера служат для проверки конфигурации компьютера (объем памяти и ее использование, типы дисков и т.д.), работоспособности устройств компьютера, оценки его производительность.
Наиболее известные – Norton System Information, Sisoft Sandra.
Программы для оптимизации дисков служат для обеспечения быстрого доступа к информации на диске за счет оптимизации размещения данных.
Наиболее известные - Microsoft Scandisk, Norton Disk Doctor.
Программы для печати экрана служат для вывода на печать содержимого экрана (особенно при работе с графическими программами).
Наиболее известные – HyperSnap-DX, SnagIt.
Операционные системы
Под операционной системой (ОС) понимают комплекс программ, управляющих работой компьютера и обеспечивающих его взаимодействие с пользователем.
С помощью ОС человек может запускать программы, осуществлять передачу и прием всевозможных данных, управлять работой программ, настраивать параметры компьютера и его устройств, перераспределять ресурсы. Без ОС невозможно запустить ни одну прикладную программу.
Операционные системы бывают:
- однозадачными и многозадачными;
- однопользовательскими и многопользовательскими;
- сетевыми и несетевыми.
Помимо этого ОС может иметь графический или командный многооконный интерфейс (либо оба сразу).
На сегодняшний наиболее популярны – Windows, UNIX, Linux.
Технологии программирования
На сегодняшний день вычислительная техника настолько проникла во все сферы деятельности человека, что для создания ПО новых типов и для его эффективного использования необходима программная продукция более высокого уровня организации ее производства, создание которого актуально и является основной задачей как теории, так и практики нового направления в программировании — технологии программирования.
Технология программирования подразумевает некое общее базовое понятие, компоненты которого можно использовать по-разному и в различных сочетаниях, все будет зависеть от условий их применения.
К технологии программирования применяют следующие требования:
- Она должна предусматривать отторжимость программного продукта от его разработчика.
- Она и средства ее поддержки должны способствовать обеспечению целенаправленной работы всего коллектива программистов (сетевое планирование, система формализованных поручений и эффективный контроль за их исполнением).
- Технология программирования должна стать безбумажной, т.е. весь процесс изготовления программного продукта и управления деятельностью коллектива программистов должен быть в максимальной степени дебюрократизирован и выполняться только за пультом экрана с минимальными расходами бумаги.
- Все этапы работы коллектива программистов должны быть охвачены средствами автоматизации.
- Технология программирования не должна зависеть от языка программирования.
- Она должна быть проста в освоении, иметь автоматически включаемые средства подсказки и обучения универсального применения.
- Технология программирования должна иметь средства автоматической фиксации всех действий коллективного изготовления программного продукта в хронологическом порядке с фиксированием в журналах разработки. Что позволит восстановить любые состояния процесса на любом интервале времени изготовления.