Сайт о телевидении

Сайт о телевидении

» » Что такое программа в. Что такое компьютерная программа? Виды компьютерных программ

Что такое программа в. Что такое компьютерная программа? Виды компьютерных программ

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

Для пользователя одним из основных отличий является характер программы:

Прикладные программы — это программы, с которыми может взаимодействовать непосредственно пользователь. К ним относятся «текстовые редакторы», «браузер», «web-сайты», «игры».

Системные программы - это программы, которые обеспечивают взаимодействие пользователя с компьютером и создают среду, в которой выполняются прикладные программы. К ним можно отнести «драйвера» и «операционные системы».

Синонимами слова программа являются: «приложение », «ПО », «программное обеспечение », «software ». Таким образом, компьютер - это совокупность «программного» и «аппаратного» обеспечения.

Можно разделить программное обеспечение по следующим признакам:

Целевая «операционная система» — поскольку разными «операционными системами» создаются разные среды для прикладного программного обеспечения, то очень важно, для какой именно операционной системы была создана конкретная «программа». Самые известные операционные системы - SuSe Linux, Ubuntu Linux, NetBSD, FreeBSD, OpenBSD MacOS и Microsoft Windows.

Целевая платформа - это разнообразное «аппаратное обеспечение», поддерживающее набор различных инструкций, так что большинство программ создается под определенное «аппаратное обеспечение». Самые популярные платформы: «x64», «x86», «ARM», «IA64», «Itanium» и другие.

Обычно для создания программного обеспечения необходимо написание на определенном «языке программирования» исходных текстов программы, дальнейшая «компиляция» программы, а также «отладка», «тестирование» и последующее распространение программного обеспечения. В 30-50-е годы ХХ века все исходные тексты писались как «машинный код», но вскоре был создан первый язык программирования «ASSEMBLER», использование которого серьезно упрощало процесс создания программы. В дальнейшем появились языки более «высокого уровня», и создание программ перешло от технических специалистов, которые отвечают за функционирование конкретных аппаратных комплексов, к специалистам по созданию программного обеспечения, которых стали называть «программистами». Когда «персональные компьютеры» распространились достаточно широко, «программирование» превратилось в отдельную индустрию, в которой задействовано огромное число специалистов. Сегодня целые учебные заведения полностью направлены на подготовку специалистов для этой индустрии. В СНГ к «программистам» всегда относились как-то по-особенному. После развала СССР было уничтожено большинство предприятий, которые непосредственно занимались производством вычислительной техники. Это привело к тому, что все страны СНГ закупали такую технику за рубежом, в государствах, у которых были развиты технологии производства аппаратного обеспечения. Из-за того произошла задержка в поступлениях, а также образовалась нехватка вычислительной техники в странах СНГ, а значит программисты обходились меньшим количеством рабочих часов с техникой и меньшими аппаратными ресурсами (такими как скорость вычислений, память, скорость передачи информации и т.д.). Если прибавить к таким условиям прекрасную математическую подготовку российских специалистов (следствие качественного образования в СССР) и способности к изобретательству, мы получим образ отечественного «программиста», уважаемого, но при этом е всегда понимаемого, причем не только в России, но за рубежом. Набравший популярность интернет перевел индустрию создания программного обеспечения на другой уровень, так как продавать и распространять программы стало проще. Это произошло благодаря возникновению систем моментальной оплаты (СМС, электронных денег, кредитных карт, терминалов, и т.п.), немалую роль сыграло и появление нового вида программного обеспечения - «web-сайтов». Вначале они были похожи на электронный вариант печатных изданий (журналов, газет, книг), но впоследствии они превратились в полноценные приложения. Развитие интернета привело к тому, что программное обеспечение, как и большинство других индустрий, стало жертвой «пиратов» - компаний и лиц, которые незаконно распространяют программное обеспечение. Борьба «щита и меча» ведется не один год, и появились разные способы децентрализованного распространения нелегальных копий программного обеспечения. Благодаря этим технологиям ответственность за распространение незаконных программ ложиться сразу на миллионы пользователей, а это делает поиск и наказание участников процесса почти невозможным.

Что такое программа?

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

С точки зрения пользователя компьютера важным отличием является характер программы :
* системные программы - программы, обеспечивающие взаимодействие пользователя с компьютером и создающие среду для выполнения прикладных программ. К таким программам, например, относятся «операционные системы» и «драйвера».
* прикладные программы - программы, с которыми взаимодействует непосредственно пользователь. Сюда можно отнести «браузер», «текстовые редакторы», «игры», «web-сайты».

Синонимы слова программа: «программное обеспечение», «ПО», «приложение», «software».

Считается, что компьютер - есть совокупность «аппаратного» и «программного» обеспечения.

Программное обеспечение можно разделить также по следующим признакам :
* целевая платформа - различное «аппаратное обеспечение», которое поддерживает различный набор инструкций, поэтому, как правило, «программа» создается под конкретное «аппаратное обеспечение». Наиболее известные платформы: «ARM», «x86», «x64», «IA64», «Itanium» и т.д.;
* целевая «операционная система» - так как различные «операционные системы» создают различные среды для прикладного программного обеспечения, - важно под какую операционную систему создана та или иная «программа». Наиболее известными семействами «операционных систем» являются: Microsoft Windows, Ubuntu Linux, SuSe Linux, MacOS, FreeBSD, NetBSD, OpenBSD.

Как правило, создание программного обеспечения предполагает написание исходных текстов программы на определенном «языке программирования», последующую «компиляцию» программы, «отладку», «тестирование» и распространение программного обеспечения.

На заре вычислительной техники (30–50-е годы ХХ в.) исходные тексты записывались в виде «машинного кода» (т.е. указания номеров инструкций и аргументов для них), позднее появился первый известный язык программирования «ASSEMBLER», который значительно упростил процесс создания программы, так как позволил указывать не числовой номер инструкции, а ее символьное обеспечение, что упростило чтение и отладку исходного теста программы. Последующее появление языков более «высокого уровня», чем «ASSEMBLER», позволило перевести создание программного обеспечения из удела технических специалистов, обеспечивающих функционирование конкретных аппаратных комплексов, в удел специалистов по созданию программного обеспечения, именуемых далее «программистами» или «разработчиками программного обеспечения».

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

В СНГ отношение к «программистам» всегда было несколько особенным. Вследствие развала Советского Союза и уничтожения предприятий, непосредственно занимавшихся созданием вычислительной техники, страны СНГ вынуждены практически в полном объеме (исключая военные нужды) закупать данную технику в других государствах, обладающих технологиями производства аппаратного обеспечения. Такая ситуация привела к некоторой задержке в поступлениях и определенной нехватке вычислительной техники в странах СНГ, поэтому отечественные программисты были вынуждены обходиться меньшим количеством часов работы с вычислительной техникой и меньшими аппаратными ресурсами (память, скорость вычислений, скорость передачи информации и т.д.).

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

С появлением и популяризацией интернета, индустрия создания программного обеспечения перешла на новый уровень - ведь распространять программы (и продавать) стало намного проще. Это обеспечивалось, во-первых, появлением систем моментальной оплаты (электронных денег, СМС, терминалов, кредитных карт, и т.п.), во-вторых, появлением особого вида программного обеспечения «web-сайтов», которые на первом этапе своего развития скорее напоминали электронный вариант печатных изданий (книг, газет, журналов), однако, позднее стали полноценными приложениями.

Как и многие другие индустрии, с появлением Интернета программное обеспечение подверглось ущемлению со стороны «пиратов» - лиц и компаний, незаконно распространяющих программное обеспечение. В ходе длительной борьбы «щита и меча» появились различные способы децентрализованного распространения незаконных копий программного обеспечения. Такие технологии позволяют распределить ответственность за распространение между миллионами пользователей, что затрудняет поиск и наказание участников данного процесса.

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

Что такое компьютерная программа в общем понимании?

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

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

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

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

Классы компьютерных программ

Что касается классификации любого ПО, сегодня существует достаточно много систем, включающих в себя разделение по типам.

Однако во всех системах классификации выделяют следующие компьютерные программы (список приводится ниже):

  • первичные системы ввода/вывода (BIOS, UEFI);
  • системные программы и их компоненты (операционные системы и их собственные службы);
  • сервисное и обслуживающее программное обеспечение;
  • среды разработки (создание программ);
  • прикладное ПО (узко ориентированные пользовательские программы, устанавливаемые на компьютер для выполнения конкретно поставленных задач).

Не стоит удивляться, что в списке присутствуют даже операционные системы или BIOS. Любая современная ОС обеспечивает взаимодействие пользователя с программными и аппаратными средствами компьютера через командный или графический интерфейс, а первичная система отвечает за сохранение информации обо всех «железных» компонентах и тестирование оборудования на стадии включения компьютера.

Как создаются приложения?

В разработку особо вникать смысла нет, поскольку здесь могут понадобиться хотя бы базовые знания языков программирования.

Достаточно отметить, что создание компьютерных программ сводится к написанию кода на самом языке (или с использованием сред разработки, например, Java SDK), тестированию приложения в самой среде и компиляции (преобразованию в код, распознаваемый машиной).

Как работает большинство программ?

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

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

Практическое применение

Использование компьютерных программ в большинстве случаев сводится к тому, чтобы запустить исполняемый файл формата EXE, который создается после установки приложения на компьютер (в мобильных устройствах применяются другие форматы). Для инсталляции предусмотрены те же исполняемые компоненты, обычно имеющие название Setup.exe (для обновлений системы Setup.msi). Но это не всегда так.

Например, некоторые программные компоненты, представленные исключительно в виде динамических библиотек DLL, способны запускаться только в другой программной среде.

Самым ярким примером являются VST-синтезаторы и эффекты, подключаемые к музыкальным редакторам и секвенсорам через соответствующий интерфейс или хост. Что такое компьютерная программа в этом смысле? Это даже не программа, а компонент, в котором прописан набор команд, исполняемых при подключении к интерфейсу и загрузке в оперативную память. Только из «оперативки» производится посыл на обработку центральным процессором, а не наоборот, как в случае с исполняемыми файлами.

Проблемы совместимости

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

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

Вместо итога

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

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

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

ПРОГРАММА

ПРОГРАММА

(греч., от pro - прежде, вперед, и grapho - нишу). Краткий очерк, предначертание, изложение, содержание сочинения, предпринимаемого издания, книги или журнала, преподавания чего-либо. Изложение убеждений какой-либо партии.

Словарь иностранных слов, вошедших в состав русского языка.- Чудинов А.Н. , 1910 .

ПРОГРАММА

1) перечень учебных предметов и указание их содержания, распредел. их по классам; 2) список очередных дел и вопросов, подлежащих обсуждению к.-н. обществ на собрании; 3) намеченный образ действий; 4) направление журнала, газеты и вообще совокупность вопросов, обсуждаемых к.-н. органом периодической печати; 5) порядок концерта, литературного вечера и проч.; 6) вообще расписание предначертание, краткий общий очерк содержания и т. д.

Полный словарь иностранных слов, вошедших в употребление в русском языке.- Попов М. , 1907 .

ПРОГРАММА

1) перечисление предметов, предположенных к преподаванию в различн. учебн. заведениях, по курсам и классам; 2) перечень очередных дел, предстоящих к обсуждению в заседании различн. обществ; 3) перечисление нумеров, имеющих быть исполненными на концерте, литерат. вечере, в цирке и т. д., а также вообще всякое объявление о порядке предположенных празднеств и зрелищ; 4) образ действий, намеченный какой-либо партией; 5) направление, которого намерен держаться орган периодической печати; 6) в искусстве - рисунки, скульптурн. произведения, архитект. чертежи и т. п., исполняемые учениками академии художеств на заданную тему.

Словарь иностранных слов, вошедших в состав русского языка.- Павленков Ф. , 1907 .

ПРОГРАММА

греч., от pro , вперед, прежде, и grapho , пишу. Предначертание.

Объяснение 25000 иностранных слов, вошедших в употребление в русский язык, с означением их корней.- Михельсон А.Д. , 1865 .

Програ́мма

((гр. programme объявление, предписание)

1) план намеченной деятельности, работ,

2) изложение основных задач и целей, намеченных правительством, политической партией или общественной организацией; программа кпсс - краткое, научно сформулированное изложение целей и задач партии в борьбе за построение коммунизма;

3) учебная п. - краткое систематическое изложение содержания обучения по определенному предмету, преподаваемому в учебном заведении, круг званий, умений и навыков, подлежащих усвоению учащимися;

4) перечень театральных, концертных, цирковых, эстрадных номеров, радио-и телепередач, а также печатный указатель исполняемых ролей, номеров, выступлений, передач и исполнителей;

5) в вычислительной технике - полное и точное описание на нек-ром формальном языке процесса обработки информации для решения поставленной задачи на электронной вычислительной машине.

Новый словарь иностранных слов.- by EdwART, , 2009 .

Программа

программы, ж. [греч. programma – объявление ]. 1. План (деятельности, работы). 2. Изложение основных положений и целей деятельности политической партии, общественной организации или отдельного государственного, общественного деятеля. Политическая программа нового президента. 3. Краткое изложение содержания и методологических установок курса, предмета, преподаваемого в учебном заведении. Программа по истории. 4. Перечень отдельных номеров, исполняемых на вечере, концерте, цирковом представлении и т. п. 5. План действий, задание для ЭВМ или механизмов с программным обеспечением; описание на специальном формализованном языке процесса выполнения такого плана.

Большой словарь иностранных слов.- Издательство «ИДДК» , 2007 .

Программа

ы, ж. (нем. Programme греч. programma публичное объявление, распоряжение, указ).
1. План деятельности, каких-н. работ и т. п. П . исследований .
|| Ср. график .
2. Изложение основных задач и целей, намеченных кем-н. (правительством, политической партией или отдельными лицами). П . перехода к рынку .
3. Краткое изложение содержания учебного предмета. П . по русскому языку .
|| Ср. конспект .
4. Содержание театральных, концертных, цирковых представлений, радио- и телепередач, а также листок, брошюра с перечнем исполняемых номеров, выступлений, передач и т. п. П . концерта . Телевизионная п .
Программка - театральная п.
5. инф. Последовательное и точное описание на нек-ром формальном языке процесса обработки информации для решения задачи на ЭВМ.
Программный - относящийся к программе 2, 3, 5, программам.
|| Ср. алгоритм .
6. разг. Каждый из нескольких каналов , по которым ведется теле- или радиопередача. По первой программе - новости, по второй - фильм .

Толковый словарь иностранных слов Л. П. Крысина.- М: Русский язык , 1998 .


Синонимы :

Смотреть что такое "ПРОГРАММА" в других словарях:

    См … Словарь синонимов

    программа - ы, ж. programme m., нем. Programme <гр. programma публичное объявление. 1. Содержание или план какой л. деятельности, работы и т. п.; предварительно разработанная совокупность действий и мероприятий для осуществления чего л. БАС 1. План… … Исторический словарь галлицизмов русского языка

    Программы, жен. [греч. programma объявление]. 1. План (деятельности, работы). Программа машиностроения. Программа испытаний. Программа работ съезда. 2. Изложение основных положений и целей деятельности политической партии, общественной… … Толковый словарь Ушакова

    Жанр музыкальное обозрение Производство … Википедия

    Программа «А» советская и российская музыкальная передача, выходившая на Первой программе ЦТ, на канале РТР и ТВЦ. Специализируется в первую очередь на необычных и перспективных музыкальных явлениях, альтернативной и некоммерческой музыке,… … Википедия

    Советская и российская музыкальная передача, выходившая на центральном телевидении. Специализируется в первую очередь на необычных и перспективных музыкальных явлениях, альтернативной и некоммерческой музыке, русском роке. Редакция определила… … Википедия

    программа - Данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации определенного алгоритма. [ГОСТ 19781 90] [ГОСТ 28806 90] [ГОСТ 28397 89] программа Ряд проектов и видов деятельности, которые… … Справочник технического переводчика

    Последовательность машинных команд, предназначенная для достижения конкретного результата. Программа согласно ГОСТ 19781 90 данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации… … Финансовый словарь

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

Термин «компьютерная программа » в зависимости от своего контекста, может применяться также к исходным текстам (или кодам) программы. Их примеры могут быть просмотрены в специальных каталогах исходников . Вместе с правилами и процедурами, а также с документацией по функционированию программных систем обработки данных, компьютерные программы составляют понятие программного обеспечения .

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

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

Процесс поиска ошибок в программах и их исправления называется отладкой программ . Обычно, заранее неизвестно, сколько ошибок содержит программа. По этой причине заранее неизвестна и продолжительность отладки программ.

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

Программы с исходными текстами, доступными для прочтения и изменения любым желающим, называются открытыми программами . Любая компьютерная программа является объектом авторского права. Авторы или собственники программ имеют право ограничивать и даже полностью закрывать доступ к их исходным текстам, которые являются интеллектуальной собственностью правообладателей.

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

В большинстве распространенных ЯП исходные тексты программ состоят из списков инструкций, описывающих заложенный в программе алгоритм. Такой подход называется императивным . Но применяются и иные методологии программирования. Так, например, в декларативном программировании описываются исходные и требуемые характеристики обрабатываемых данных, а выбор подходящего алгоритма решения описанной задачи поручается специализированной программе-интерпретатору. Применяются также логическое и функциональное программирование.

11.06.2010

Читайте также:

Последнее редактирование: 2012-01-23 12:08:31

Метки материала: ,