Software - це що таке? Що за програма Software?

Software - це що таке? Що за програма Software?

Будь-який користувач комп 'ютера щодня стикається з таким поняттям, як Software. Це й не дивно, адже сучасне розуміння цього терміну трактується як "програмне забезпечення", або, скорочено, "ПО" ("софт"). Розгляньмо деякі важливі аспекти, що стосуються типів ПЗ і взаємозв 'язку з іншими компонентами комп' ютерних систем. Отже, що таке Software?

Загальні поняття

У загальному сенсі Software - це набір команд, директив з їх виконання на основі будь-якої мови програмування, програма або набір програм, що відповідають за взаємодію не тільки між користувачем і комп 'ютерною системою, але і між так званими залізними компонентами комп' ютера або іншими додатками, створеними для певних цілей.


Залежно від покладених на програмне забезпечення функцій, весь софт можна розділити на кілька класів, про що буде сказано дещо пізніше.

Hardware и Software: відмінності і взаємозв 'язок

Тлумачення цих двох термінів виникло з появою перших комп 'ютерів. Сьогодні прийнято вважати, що Hardware - це апаратна частина комп 'ютера ("залізні" компоненти), яку можна помацати руками (материнські плати, процесори, оперативна пам' ять, периферія та інші пристрої в самій системі або підключаються до неї).

Зовсім протилежне тлумачення у терміну Software. Переклад можна уявити дослівно як "м 'який виріб". У більш широкому сенсі мається на увазі те, що програму не можна помацати, вона являє собою в якомусь сенсі навіть якийсь віртуальний компонент.

І, що найцікавіше, для забезпечення використання "заліза" або доступу до його можливостей в обов 'язковому порядку має застосовуватися спеціальне ПЗ у вигляді спеціальних керуючих програм, що відповідають за працездатність таких пристроїв (драйвери, набори команд введення/виведення BIOS тощо).

Сам термін Software, переклад і трактування якого зараз використовуються повсюдно саме в контексті програмного забезпечення, навіть на зорі розвитку комп 'ютерної техніки не був у побуті. І тільки на початку 60-х років минулого століття сформувався остаточно. Це було пов 'язано з введенням чіткого розмежування команд, що відповідають за управління апаратною частиною комп' ютера, і кінцевим користувачем. Взаємопов 'язані класи (Software і Hardware) стали називати програмно-апаратними комплексами.

Класифікація програмного забезпечення за кількома критеріями

Оскільки Software - це саме програмна частина будь-якої комп 'ютерної системи, таке ПЗ можна розділити на кілька великих категорій виходячи з покладених на нього завдань. Так, наприклад, щодо використання і тиражування ПЗ поділяють на корпоративне (виконане на замовлення для великих фірм і компаній) і ПЗ для широкого кола користувачів.


За критерієм переносимості програми можуть бути платформозалежними (працюють виключно в одному середовищі і з одним типом "заліза") і кроссплатформними (адаптованими до абсолютно різних систем).

За типом розповсюдження ПЗ можна розділити на закриті програми, відкриті (щодо вихідного коду Open Source з ліцензією GNU) і вільні. Крім того, сюди нерідко включають безкоштовне, платне та умовно-безкоштовне програмне забезпечення. Останній тип додатків має повну або частково обмежену функціональність протягом певного періоду часу, після закінчення якого, програму доведеться купити. В іншому випадку вона перестане працювати.

А ось за призначенням класифікація передбачає наявність трьох великих категорій програмного забезпечення:

  • системне;
  • прикладне;
  • інструментальне (засоби розробки, інструменти та утиліти).

Системне ПЗ

Як системні компоненти виступають не тільки програми в звичайному розумінні. Насправді операційні системи теж є програмами.

Однак часто системне ПЗ можна уявити собі у вигляді якогось прошарку, що зв 'язує користувацькі програми з середовищем операційної системи, в якій вони функціонують, і апаратною частиною, задіяною при виконанні того чи іншого завдання (наприклад, ті ж драйвери пристроїв).

Щоб було зрозуміліше, наведемо найпростіший приклад. Візьмімо операційну систему Windows (системний прошарок), звукову карту ("залізо") і програвач мультимедіа (прикладне ПЗ). Щоб саундкарта могла відтворити звук, потрібен драйвер (системний ПЗ), що забезпечує керування пристроєм самою операційною системою, яка є і платформою для програвача. Оскільки система розпізнає пристрій, за допомогою своїх директив вона передає управління ним плеєру, для розпізнавання типу звукового файлу використовуючому спеціальні кодеки і декодери (додаткові програмні інструменти). Взаємозв 'язок очевидний.

Прикладні програми

До прикладних програм відносять всі ті програми, які не керують компонентами системи або використовують їх тільки частково, а вирішують суворо визначені конкретні завдання користувача.


Прикладів сьогодні можна навести дуже багато: офісні пакети, редактори мультимедіа, системи математичних обчислень і проектування, засоби доступу в інтернет і управління мережами, архіватори тощо. Як бачимо, кожен тип програмного забезпечення (Software) - це інструмент, орієнтований на виконання вузького кола завдань і взаємодіє безпосередньо з користувачем цільної комп 'ютерної системи.

Інструменти та утиліти

До інструментів відносять програмне забезпечення для розробки та супроводу інших типів ПЗ. Сюди можна включити платформи мов програмування, середовища розробки, пакети SDK, системи відстеження помилок і контролю версій.

Що стосується утиліт, то під ними часто мають на увазі програмні продукти для налаштування параметрів апаратних та/або програмних компонентів, що входять в об 'єднану комп' ютерну систему, без застосування яких доступ до налаштувань іншими методами не може бути здійснений. Таке ПЗ може бути вбудованим в операційні системи або встановлюється окремо. У деяких випадках утиліти можуть задіяти повну автоматизацію налаштувань (наприклад, програми-оптимізатори для виправлення помилок і поліпшення роботи Windows-систем).

Замість післямови

Нарешті, варто відзначити, що у багатьох користувачів часто виникає ще одне питання щодо терміну Software: "Що це за програма?" Така постановка питання дещо некоректна, оскільки, як вже було сказано вище, це може бути не тільки одиничний додаток, але і сукупність програм, набір мовних команд, директив і правил мови програмування для управління іншими компонентами або передачі їх для обробки і виконання у вигляді двійкового коду, скажімо, центральному процесору.

Наведена класифікація теж досить умовна, адже в описі були представлені тільки основні типи ПЗ без подальшого поділу на підкласи, яких сьогодні можна нарахувати дуже і дуже багато. Але для первинного розуміння самого терміну Software пересічному користувачеві може вистачити і цих знань.