For faster navigation, this Iframe is preloading the Wikiwand page for Пакет прикладных программ.

Пакет прикладных программ

Материал из Википедии — свободной энциклопедии

Паке́т прикладны́х програ́мм (аббр. ППП, англ. application package[1]) или паке́т програ́мм — набор взаимосвязанных модулей, предназначенных для решения задач определённого класса некоторой предметной области. По смыслу ППП было бы правильнее назвать пакетом модулей вместо устоявшегося термина пакет программ. Отличается от библиотеки тем, что создание библиотеки не ставит целью полностью покрыть нужды предметной области, так как приложение может использовать модули нескольких библиотек. Требования же к пакету программ жёстче: приложение для решения задачи должно использовать только модули пакета, а создание конкретного приложения может быть доступно непрограммистам[2].

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

Цепочечный подход

[править | править код]

Проще всего проиллюстрировать пакетный подход на примере конвейера в Unix. Система Unix содержит большое количество небольших программ, выполняющих конкретную функцию. В конвейере входящие в цепочку программы могут обрабатывать некоторые данные[3].

dusorttailcutlpr
du . | sort -n | tail -n 10 | cut -f 2- | lpr

Цепочечный подход в ряде случаев можно автоматизировать, поручив построение цепочки системным средствам пакета[3]. Помимо перечислительного механизма к созданию цепочки (явное задание входящих в цепочку модулей), возможен ассоциативный механизм, при котором модуль включается системными средствами в формируемую программу на основании некоторого атрибута. В случае, когда пользователь задаёт известные и искомые величины, восстановление цепочки средствами системы называется автоматическим планированием вычислений. Несмотря на некоторые достоинства и отдельные успехи (системы ПРИЗ и СПОРА), автоматическое планирование вычислений не получило массового развития по причине бедности цепочки как конфигурационного ориентира[4].

Каркасный подход

[править | править код]

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

Задание конкретной конфигурации для пользователя упрощается. Гнёзда каркаса — отражение характеристик решаемой задачи, а сменные модули — допустимые значения этих характеристик[5].

Например, в каркасе с двумя вариантными гнёздами можно описать конфигурацию расчёта, не касаясь алгоритма задачи: Материал ← Алюминий, Точность ← Двойная.

В отличие от цепочечного, каркасный подход даёт больше свободы в проектировании структуры формируемой программы, что является предпочтительным для большинства предметных областей[5].

Виды пакетов

[править | править код]

Можно выделить следующие виды ППП[6]:

Примечания

[править | править код]
  1. Кочергин В. И. Введение // Англо-русский толковый научно-технический словарь по системному анализу, программированию, электронике и электроприводу. — Томск: --, 2008. — Т. 1. — С. 31. — 652 с. — ISBN 5751119371.
  2. 1 2 Горбунов-Посадов, 1999.
  3. 1 2 Горбунов-Посадов, 1999, 3.2. Цепочечный подход.
  4. Горбунов-Посадов, 1999, 3.3. Автоматическое составление цепочки.
  5. 1 2 3 Горбунов-Посадов, 1999, 3.6. Каркасный подход.
  6. Топоркова О. М. Учебное пособие по информатике. Пакеты прикладных программ, Калининградский государственный технический университет. Дата обращения: 8 ноября 2021. Архивировано 8 ноября 2021 года.

Литература и ссылки

[править | править код]
{{bottomLinkPreText}} {{bottomLinkText}}
Пакет прикладных программ
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?