Дать определение что такое программа. Что такое компьютерная программа? Создание, использование, виды и назначение компьютерных программ

1. Кто в компании должен отвечать за базу знаний - руководители отделов, старшие менеджеры, вся команда, HR-менеджер?

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

2. Большинство корпоративных баз знаний используют разметку wiki. Затрудняет ли это внедрение и использование таких систем в коллективе, где не все с ней знакомы? Как обойти эту проблему?

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

Константин Коломеец , ex: Яндекс
Wiki-разметка - одно из самых серьезных препятствий во внедрении wiki в компаниях, если есть возможность использовать программые решения, использующие wysiwyg-редакторы, надо это делать.

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

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

3. Каким образом можно превратить базу знаний из пассивного хранилища данных (как это обычно бывает) в ежедневный рабочий инструмент команды?

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

Константин Коломеец , ex: Яндекс
Во-первых, выступить в качестве примера: опубликовать и поддерживать в актуальном состоянии интересную для коллег информацию о своей области ответственности. Если они задают вопрос, который есть в wiki, отвечать максимально кратко, отправляя их за полной информацией в wiki. Если задают вопрос, ответа на который в wiki еще нет, добавлять ответ в wiki, потом уже отвечать сотруднику - так же ссылкой.

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

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

4. Должна ли база знаний дополняться системой обучения сотрудников (LMS), позволяющей отслеживать процесс ознакомления каждого сотрудника с представленной в базе информацией?

Никита Михеенков , Nimax
Что базы знаний в отрыве от процесса обучения не очень перспективны. Возможно, правильнее использовать для управления знаниями не базы, а как раз LMS-системы, формируя в них курсы для сотрудников и отслеживая прогресс.

5. Должны ли быть разделены базы знаний по проектам (опыт компании) и общая база знаний, описывающая систему работы в компании (методология компании)?

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

; 2) синтаксическая единица, которая соответствует правилам определённого языка программирования , состоящая из определений и операторов или инструкций , необходимых для определённой функции, задачи или решения проблемы (стандарт ISO/IEC 2382-1:1993) .

Первое определение соответствует понятию «исполняемая программа », второе - относится к понятию «исходный текст ».

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

Компьютерные программы как объект авторского права и других прав относятся к категории нематериальных активов .

Создание программ

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

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

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

Хранение и выполнение

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

Одновременное выполнение

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

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

Самомодифицирующиеся программы

Считается, что выполняющаяся компьютерная программа отличается от данных, которые она обрабатывает. Однако это отличие размывается, когда компьютерная программа модифицирует сама себя. Модифицированная компьютерная программа затем выполняется как часть исходной программы. Самомодификация кода возможна в программах, написанных в машинном коде , на ассемблере , Лиспе , Си , Коболе , ПЛ/1 и Прологе .

Использование программ

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

Правовые аспекты

Согласно ст. 1261 ГК РФ программой для ЭВМ является представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств в целях получения определенного результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения.

Программы с общедоступными исходными текстами называются открытыми .

Компьютерные программы в большинстве стран являются объектами авторского права (включая Украину и Россию). В некоторых странах компьютерные программы могут защищаться патентами . Патентованию компьютерных программ способствовало Соглашение о торговых аспектах прав интеллектуальной собственности, которое установило минимальные требования к охраняемому ряду объектов прав интеллектуальной собственности и фактически разрешило патентовать программы. Соглашение ТРИПС обязательно для выполнения на территории Украины и России как государств-членов ВТО.

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

Исключительное право на программы для ЭВМ и базы данных возникает автоматически с момента её создания и действует в течение всей жизни автора и семидесяти лет, считая с 1 января года, следующего за годом смерти автора (либо смерти последнего из соавторов).

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

Авторское и некоторые другие [какие? ] права интеллектуальной собственности позволяют ограничивать доступ к исходным текстам программ.

Решение для 54-ФЗ, которое состоит из бесплатной кассовой программы и онлайн-ККТ Вики Принт.

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

Установка и использование программы - бесплатно, Кабинет Дримкас в комплекте без доплат.

Если у вас уже есть компьютер или ноутбук, незачем покупать отдельный кассовый аппарат. Достаточно онлайн-ККТ, которая будет печатать чеки и отправлять их в ОФД и налоговую. Такое решение может оказаться существенно выгоднее.

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

У вас все готово, чтобы перейти на новые требования закона - достаточно подключить Вики Принт.

Без трат на ненужную кассу

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

Не доплат за сервисы

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

Последовательно и без спешки

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

Первый шаг - Дримкас Старт

1. Установить Дримкас Старт

После установки можно подключить:

  • Кабинет Дримкас, чтобы работать с товарами и анализировать продажи
  • Сканер штрихкодов для быстрой и безошибочной работы кассиров
  • Банковский терминал, чтобы принимать оплату картой
  • Товароучетную систему или бухгалтерскую программу

2. Подключить Вики Принт

Чтобы соответствовать 54-ФЗ, вам достаточно подключить и зарегистрировать Вики Принт.

Облачный сервис аналитики продаж в комплекте

Подключайте Кабинет Дримкас, чтобы в реальном времени получать информацию о выручке и других основных метриках торговли. Загружайте с его помощью товары, подключайте внешние сервисы и бухгалтерское ПО.

Весь функционал - бесплатно

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

Ничего не теряете, если откажетесь от Дримкас Старт

Если вам не подойдет кассовая программа - удаляйте бесплатную и покупайте другое решение. Не поздно будет отказаться даже после покупки Вики Принт.

Онлайн-ККТ Вики Принт совместимы с кассовыми терминалами Вики Классик и Вики Микро, с 1С и другими популярными кассовыми программами.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Вместо итога

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

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

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

Публикации по теме