Pachetul aplicației

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 1 mai 2018; verificările necesită 15 modificări .

Un pachet de aplicații (abrev. PPP, pachet de aplicații în limba engleză  [1] ) sau un pachet de software este un set de module  interconectate concepute pentru a rezolva probleme dintr-o anumită clasă dintr-un anumit domeniu . După semnificația PPP, ar fi mai corect să-l numim un pachet de module în loc de termenul stabilit pachet de software. Diferă de o bibliotecă prin faptul că crearea unei biblioteci nu urmărește să acopere în totalitate nevoile domeniului de studiu, deoarece o aplicație poate folosi module din mai multe biblioteci. Cerințele pentru un pachet software sunt mai stricte: o aplicație pentru a rezolva o problemă trebuie să folosească doar modulele pachetului, iar crearea unei aplicații specifice poate fi disponibilă pentru non-programatori [2] .

Abordarea pachetului poate fi contrastată cu crearea unui program „universal”. Un astfel de program poate participa la rezolvarea diferitelor probleme, în timp ce în abordarea pachetului, mai multe module ale pachetului sunt combinate pentru a rezolva o singură problemă. Diferența poate părea mică (este posibil să faci un program „universal” dintr-un pachet software prin adăugarea unui add-on de control, sau invers, să folosești unele module ale programului „universal” ca PPP). Totuși, din punct de vedere arhitectural, PPP este mai convenabil pentru extindere și modificare, deoarece dezvoltarea PPP poate avea loc prin adăugarea de noi module care nu afectează performanța modulelor depanate anterior [2] .

Abordare în lanț

Cel mai simplu mod de a ilustra abordarea lot este cu pipeline Unix . Un sistem Unix conține un număr mare de programe mici care îndeplinesc o anumită funcție. În curs de realizare, programele incluse în lanț pot prelucra unele date [3] .

În exemplul următor se calculează datele despre volumul subdirectoarelor stocate în directorul curent (comandă du), se sortează ( sort), se selectează cele 10 care ocupă cel mai mare volum ( tail), se aruncă primul câmp cu un număr ( cut​​) și rezultatul este tipărit pe imprimantă ( lpr): du. | sortare-n | coada -n 10 | tăiat -f 2 - | lpr

În unele cazuri, abordarea în lanț poate fi automatizată prin încredințarea construcției lanțului instrumentelor de sistem ale pachetului [3] . Pe lângă mecanismul enumerativ pentru crearea unui lanț (alocarea explicită a modulelor incluse în lanț), este posibil un mecanism asociativ , în care modulul este inclus prin mijloace de sistem în programul generat pe baza unui atribut. În cazul în care utilizatorul setează valorile cunoscute și dorite, refacerea lanțului prin intermediul sistemului se numește planificare automată de calcul . În ciuda unor avantaje și succese individuale (sisteme PRIZ și SPOR), programarea automată de calcul nu a primit o dezvoltare în masă din cauza sărăciei lanțului ca ghid de configurare [4] .

Abordare wireframe

Odată cu acumularea experienței de programare în orice domeniu, de-a lungul timpului, se dezvoltă idei despre o organizare modulară rațională, se acumulează un set de module care nu se schimbă prea mult la trecerea de la o versiune de programe la alta și există și locuri permanente. pentru module înlocuibile . Ca urmare, apare o arhitectură de aplicație, constând dintr-o componentă permanentă - un cadru care are sloturi pentru amplasarea modulelor înlocuibile [5] . Desigur, prizele și modulele plug-in au specificații convenite .

Setarea unei configurații specifice pentru utilizator este simplificată. Cuiburile de cadru sunt o reflectare a caracteristicilor problemei care se rezolvă, iar modulele înlocuibile sunt valorile admisibile ale acestor caracteristici [5] .

De exemplu, într-un cadru cu două cuiburi variante , este posibil să se descrie configurația de calcul fără a atinge algoritmul problemei: Материал ← Алюминий, Точность ← Двойная.

Spre deosebire de abordarea în lanț, abordarea cadru oferă mai multă libertate în proiectarea structurii programului generat, ceea ce este de preferat pentru majoritatea disciplinelor [5] .

Tipuri de pachete

Se pot distinge următoarele tipuri de PPP [6] :

Note

  1. Kochergin V. I. Introducere // Dicționar științific și tehnic explicativ englez-rus privind analiza sistemelor, programare, electronică și acționare electrică. - Tomsk: --, 2008. - T. 1. - S. 31. - 652 p. — ISBN 5751119371 .
  2. 1 2 Gorbunov-Posadov, 1999 .
  3. 1 2 Gorbunov-Posadov, 1999 , 3.2. abordare în lanț.
  4. Gorbunov-Posadov, 1999 , 3.3. Înlănțuire automată.
  5. 1 2 3 Gorbunov-Posadov, 1999 , 3.6. Abordarea cadru.
  6. Toporkova O. M. Manual de informatică. Pachete de aplicații software, Universitatea Tehnică de Stat din Kaliningrad . Preluat la 8 noiembrie 2021. Arhivat din original la 8 noiembrie 2021.

Literatură și referințe