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

Как известно, компьютер без установленных на нем необходимых программ представляет «вещь в себе». Часто встречаются термины: hardware и software. Первый термин означает аппаратное обеспечение («железо»), второе – программное обеспечение (ПО или «софт»). Иногда стоимость программ, установленных на компьютере, превышает его стоимость. За примером далеко ходить не надо – всеми любимый фотошоп стоит порядка 20 с лишним тысяч русских денег (и это всего лишь одна программа на компьютере).

По типу лицензии

Программное обеспечение можно разделить на:

  • коммерческое платное. Как правило, разработчики стремятся держать качество своего продукта на высоте; развивать его, учитывая современные технологии – ведь некачественный и устаревший продукт покупать никто не будет. Чем удачнее продукт на фоне своих конкурентов, тем как правило выше его цена:). Примеры - Microsoft Office, Windows и т.д.
  • бесплатноеfreeware. Исходный код закрыт, нельзя модифицировать программу. Пример таких программ: веб-браузеры, бесплатные антивирусы и тд. Часто разработчик выпускает несколько версий своей программы – домашняя бесплатная, и корпоративная платная. Или, например вы написали очень классную удачную программу, но у нее есть более известные и бесплатные аналоги качества похуже. Тогда вы можете выпустить вначале бесплатную первую версию, а после некоторого жизненного цикла, когда программа станет известной среди широкого круга людей, можно выпустить следующую версию с новыми функциями, но немножечко платную;). Пример - браузер Google Chrome, Skype.
  • условно-бесплатное. Программа работает определенное число запусков или небольшой промежуток времени (например, 15 запусков или 30 дней работы). После этого она или перестает работать вообще, или отключаются некоторые функции, или будет мелькать назойливое окошко с рекламой. Пример условно-бесплатной программы – архиватор WinRar (после месяца работы в момент запуска выходит окошечко с предупреждением).
  • свободное, opensource. Программа не только бесплатная, но и идет с открытым исходным кодом. Это означает свободу модификации программ. Обычно лиценцзия GNU. Примеры- ОС Linux, Gimp, браузер Chromium.

В силу относительно плохого экономического положения в нашей стране многие устанавливают пиратские версии лицензионных коммерческих продуктов. Конечно, это неправильно. Во-первых, при этом нарушается закон об авторском праве (наказание вплоть до уголовной ответственности). Во-вторых, многие пиратские сборки программ содержат вредоносный код или дыру в безопасности системы (например, удаленное управление системой).

Как же быть, если денежек маловато? Ответ прост и очевиден: ставить бесплатное или свободное ПО, а самые необходимые программы можно и купить (например операционная система windows xp домашняя редакция стоит 2-2.5 тысячи рублей – что не так дорого за самую важную программу на вашем компьютере).

Ниже приведен небольшой список в основном аналогичных по функциям программ. Слева – коммерческий продукт, справа его бесплатный аналог.

  • Adobe Photoshop – Gimp
  • пакет Microsoft Office – OpenOffice
  • антивирус Касперского – Avast, Panda

И так далее, список можно значительно расширить.

По типу выполняемых задач

Программное обеспечение можно разделить на:

1. Системное

Это программы, необходимые для запуска, функционирования компьютера. Другими словами, это те служебные программы, необходимые для нормальной работы компьютера.

  • Операционная система. Безусловно, самая важный комплекс программ. Опеспечивает диалог пользователя с компьютером, взаимодействие отдельных компонентов компьютера между собой и т.д. Все остальные программы (например драйверы устройств, игры, текстовые редакторы и прочие) должны быть совместимы с операционной системой. Обычно совместимость указывают в системных требованиях программы.
  • Служебные утилиты. Примеры: утилиты дефрагментации диска, утилиты восстановления системы, файловые менеджеры, антивирусы, программы тестирования компьютера и др.
  • Драйверы устройств. Эти программы управляют устройствами компьютера и периферийными устройствами. Пример – драйвер принтера, драйвер сканера.

2. Прикладное

Данный класс программ – это те приложения, которые человек использует при работе, отдыхе, обучении, общении, играх.

  • Графические, текстовые редакторы
  • Программы сканирования и распознавания изображений
  • Звуковые и видеоредакторы
  • Веб-браузеры для просмотра интернет-страниц
  • Компьютерные игры
  • Электронные словари и системы машинного перевода
  • Базы данных
  • Математические пакеты и т.д.

3. Инструментальное

Программы (приложения) создаются людьми - программистами. Программисты пишут игры, редакторы, драйверы, антивирусы с помощью специального программного обеспечения - системы программирования. Современные системы программирования являются развитыми средствами создания программного приложения.

В состав систем программирования как правило входят:

  • текстовый редактор для написания кода программы на языке программирования
  • транслятор, который переводит текст программы в машинный исполняемый язык
  • средства отладки программы и поиска в ней ошибок
  • среда визуального конструирования – формы, кнопки, списки и т.д.

Наиболее известные языки программирования:

  • Java
  • C, C++
  • Python
  • Php