Программное обеспечение: виды, принципы, применение¶
Программное обеспечение (софт, от англ. software) — совокупность программ и данных, предназначенных для выполнения определённых задач на вычислительной технике. В отличие от аппаратной части компьютера (железа), софт представляет собой набор инструкций, которые процессор исполняет последовательно. Термин «программное обеспечение» ввёл в оборот американский математик Джон Тьюки в 1958 году.
¶Состав программного обеспечения
Софт включает три основных компонента:
- Программы — исполняемые файлы и библиотеки кода.
- Документацию — руководства пользователя, описание API, техническую документацию.
- Данные — конфигурационные файлы, базы данных, мультимедиа-ресурсы, используемые программами.
¶Классификация
¶По назначению
| Категория | Описание | Примеры |
|---|---|---|
| Системное ПО | Обеспечивает работу компьютера и создаёт среду для других программ | Операционные системы Windows, Linux, macOS, драйверы, загрузчики |
| Прикладное ПО | Решает конкретные пользовательские задачи | Текстовые редакторы, браузеры, игры, бухгалтерские системы |
| Программирование | Инструменты разработки программ | Компиляторы, интегрированные среды разработки (IDE), отладчики |
| Встраиваемое ПО | Управляет отдельными устройствами и техникой | Прошивки бытовой техники, микроконтроллеров, автомобильных блоков |
¶По типу распространения
- Проприетарное (закрытое) — исходный код недоступен пользователям, распространяется по лицензии. Примеры: Microsoft Windows, Adobe Photoshop.
- Свободное (free/open source software, FOSS) — исходный код открыт, пользователи вправе изучать, изменять и распространять его. Примеры: Linux, LibreOffice, Firefox.
- Условно-бесплатное (shareware) — распространяется бесплатно с ограничениями, снимаются после покупки лицензии.
- Adware — бесплатное ПО, финансируемое показом рекламы.
¶По способу предоставления
- Локальное (десктопное) — устанавливается на устройство и работает автономно.
- Веб-приложения — работают в браузере, серверная часть размещается у провайдера.
- Облачное (SaaS) — предоставляется по подписке, примеры: Яндекс 360, Google Workspace, 1С:Фреш.
¶Операционные системы
Операционная система (ОС) — центральный компонент системного обеспечения, управляющий аппаратными ресурсами и предоставляющий сервисы прикладным программам. ОС выполняет планирование процессов, управление памятью, файловую систему, ввод-вывод и защиту данных.
В России в 2023 году Правительство приняло программу импортозамещения в сфере информационных технологий. Государственные организации переводятся на отечественные ОС: Astra Linux (разработчик — «Базальт СПО»), РЕД ОС («Ред Софт»), «Альт» («Инвариант»), «Роса» («Роса»). Astra Linux используется в ряде критически важных объектов и в Вооружённых силах РФ.
¶Лицензирование
Программы распространяются на условиях лицензии, определяющей права пользователя. Основные типы:
- Персональная — для одного пользователя или устройства.
- Многопользовательская — для группы пользователей в пределах организации.
- Бессрочная — оплата один раз, обновления включены.
- Подписочная — оплата периодически, при прекращении доступ прекращается.
В России действует закон об ответственности за использование нелегального программного обеспечения: статья 146 Уголовного кодекса РФ предусматривает штрафы и лишение свободы за нарушение авторских прав на программы для ЭВМ.
¶Разработка программного обеспечения
Создание софта включает этапы:
- Анализ требований — определение задач и ограничений.
- Проектирование — архитектура, выбор технологий.
- Кодирование — написание исходного кода на языках программирования (Python, C++, Java, JavaScript, Go, Rust).
- Тестирование — выявление и исправление ошибок.
- Внедрение и сопровождение — развёртывание, обновления, поддержка.
Модели разработки: водопадная (каскадная), спиральная, гибкие методологии (Agile, Scrum).
¶Экономика программного обеспечения
Мировой рынок софта оценивается в триллионы долларов. Крупнейшие компании по выручке от программ: Microsoft, Oracle, SAP, Adobe. В России крупнейшие разработчики — «1С», «Яндекс», «Лаборатория Касперского», «Почта России» (в части ПО), «Код безопасности».
Рынок ПО в России в 2020-х годах переживает трансформацию: западные вендоры уходят, их место занимают отечественные решения. По данным Ассоциации отечественного программного обеспечения (АПО), доля российского ПО в госсекторе превышает 80 %.
¶Программное обеспечение и право
В России программы для ЭВМ признаются объектом авторского права (статья 1259 Гражданского кодекса РФ). Срок охраны — 70 лет после смерти автора или публикации. Пиратское копирование и распространение преследуется по закону.
Свободное ПО не означает «бесплатное» в коммерческом смысле: лицензии GPL, MIT, Apache предполагают определённые обязательства перед пользователями и разработчиками.
¶История
Термин «software» появился в статье Джона Тьюки и Аланна Перлиса в 1958 году. Ранее все программы считались частью аппаратного обеспечения. Первые программы создавались на перфокартах, затем — в машинном коде, позже появились ассемблеры и компиляторы высокого уровня (FORTRAN, 1957; COBOL, 1959; ALGOL, 1960). В СССР разрабатывались собственные языки и ОС: БЭСМ, ЕС ЭВМ, «Эльбрус».
