Классификация программного обеспечения
Те возможности, которые сейчас нам предоставляют достижения современной науки и техники, вряд ли кто (ну или вернее очень малая осведомленная часть населения планеты) мог себе представить еще лет двадцать назад. Сейчас же, такие фантастические на то время, понятия, как ПК, смартфоны, планшеты, интернет и прочее воспринимаются всего лишь как неотъемлемая часть быта практически любого человека в более-менее развитой стране. И большинство людей совершенно не в курсе что, как и почему так функционирует. Между тем, работа любой цифровой системы обеспечивается серьезной научной работой и наличием комплекса программных средств, которые обеспечивают взаимодействие машины и человека. Иными словами - программным обеспечением (ПО). По сути своей, это комплекс математических алгоритмов, реализованных на одном из языков программирования, который используется для того, чтобы максимально реализовать весь технический потенциал оборудования в соответствии с задачами, которые ставит пользователь. Классификация ПО или софта, это довольно емкий процесс, ввиду количества и разнообразности программ на сегодняшний день. Краткую классификацию ПО нам предоставит Петров А. Н. - сотрудник форума http://softforum.info.
Основные критерии оценки и классификации ПО:
1. Назначение, выполняемые функции. По этому критерию весь софт можно разделить на три большие группы:
- системное ПО, которое управляет работой компонентов системы (процессором, оперативкой, устройствами ввода и прочим). К этой категории можно отнести ОС, утилиты, СУБД;
- прикладное ПО, которое реализует специализированные пользовательские задачи (игры, медиа, научные программы, САПР и т.д.);
- инструментальное ПО, используемое для разработки предыдущих категорий ПО (ассемблер, компилятор, транслятор и прочее).
2. Способ распространения. По этому критерию выделяют закрытое, открытое и свободное ПО.
3. Вид, структура. По этому критерию ПО бывает компонентное (цельная программа с законченной функцией) и комплексное (комплекс отдельных программ, решающих разные задачи).