Interfață cu utilizatorul text

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 28 februarie 2022; verificările necesită 3 modificări .

Interfață utilizator text , TPI ( eng.  Interfață utilizator text, TUI ; de asemenea , Interfață utilizator cu caractere, CUI ) este un tip de interfață utilizator care utilizează doar un set de caractere alfanumerice și caractere pseudografice pentru intrare-ieșire și prezentarea informațiilor . Se caracterizează prin solicitări reduse asupra resurselor echipamentelor de intrare-ieșire (în special, memorie ) și viteză mare de afișare a informațiilor. A apărut într-una dintre etapele inițiale ale dezvoltării tehnologiei computerului , odată cu dezvoltarea capacităților hardware care vizează implementarea interfeței de linie de comandă care a apărut mai devreme , care, la rândul său, este moștenitorul utilizării teletipurilor ca interfață pentru tehnologia informatică. . Interfața de linie de comandă are o serie de avantaje de utilizare față de interfața grafică , astfel încât programele cu o interfață text sunt create și utilizate până în prezent, în special în zone specifice și pe echipamente cu consum redus.

Dezavantajul acestui tip de interfață este mijloacele vizuale limitate din cauza numărului limitat de caractere incluse în fontul oferit de hardware.

Programele cu interfață text pot implementa o interfață fereastră , care este facilitată în special de utilizarea simbolurilor pseudografice.

Interfață de linie de comandă

O interfață text care reproduce capacitățile unui teletip, adică imită o bandă nesfârșită de hârtie care se derulează pe ecran, pe care utilizatorul poate introduce textul comenzilor și mai jos poate primi rezultatele muncii sale și sub formă de text , se numește interfață de linie de comandă . De asemenea, astfel de programe sunt adesea numite programe de consolă  - deoarece sistemele în care informațiile sunt introduse și scoase printr-o consolă text, practic implementează interfața de linie de comandă.

Caracteristicile interfeței text

În cel mai simplu caz, o interfață bazată pe text folosește o interfață de linie de comandă , dar multe programe folosesc elemente interactive pentru a crea o interfață mai ușor de utilizat, care se apropie de grafic în comoditate .

Interfața text poate implementa toate elementele de bază ale interfeței utilizate în interfața grafică - meniuri , butoane , comutatoare , casete de selectare, liste derulante , bare de defilare și așa mai departe. Multe programe au implementat un sistem avansat de ferestre, ajutate de biblioteci precum CScape , D-Flat , Turbo Vision și multe altele, unele aveau teme modificabile (cum ar fi DOS Navigator ) și suportau diverse dispozitive de interacțiune interactivă, cum ar fi mouse , joystick , pix luminos .

La nivel de program, programele de consolă folosesc dispozitive standard de intrare-ieșire ( stdin, stdout, stderr) pentru a introduce și scoate informații, deși pot deschide alte fișiere , conexiuni de rețea și pot efectua alte acțiuni disponibile în mediul care le execută. Ieșirea caracterelor imprimabilestdout și face ca acele caractere să stderrapară pe dispozitivul de ieșire și să fie primite de utilizator.

Programele de consolă pentru sisteme de operare mai avansate , în special UNIX , tind să poată rula pe o clasă destul de largă de implementări de interfață cu utilizatorul. Pentru a simplifica scrierea unor astfel de programe, biblioteca ncurses este utilizată pe scară largă .

Implementarea interfeței text

Programul consolă nu este necesar să se ocupe de implementarea interacțiunii utilizatorului în sine, fiind limitat la I/O pe dispozitive standard , folosind biblioteci precum ncurses sau alte interfețe de programare . Interacțiunea reală cu utilizatorul este de obicei realizată de sistemul de operare sau alt software.

Implementarea clasică a unei interfețe text, datând din prima jumătate a secolului al XX-lea , este un dispozitiv alfanumeric de intrare-ieșire, de exemplu, un set de tastatură și ADC ( teleimprimator ). Ulterior, în locul ATsPU, au început să fie folosite monitoare echipate cu un generator de caractere, ceea ce a făcut posibilă organizarea rapidă și convenabilă a unui dialog cu utilizatorul. Aproape fiecare computer modern este sau poate fi echipat cu astfel de dispozitive . Astfel de seturi de monitor și tastatură (uneori cu adăugarea unui mouse ) se numesc consolă de computer.

În conformitate cu tradiția programelor de consolă care utilizează tastatura și ADPU-ul pentru intrare și, respectiv, ieșire, interacțiunea acestor programe cu utilizatorul a fost redusă la citirea din stdin și ieșire în stdout. Astfel, a devenit posibilă redirecționarea fluxurilor de intrare-ieșire prin interacțiunea cu utilizatorul prin alte dispozitive, inclusiv cele conectate prin rețea , precum și prin utilizarea unor programe speciale - emulatori de terminale , de exemplu, desenarea unei ferestre cu text în interfața grafică cu utilizatorul ( fereastra text ) .

În anii 1970 și mai târziu, au fost produse chiar și dispozitive speciale care implementează o interfață text - terminale text conectate printr-un port serial la un computer direct sau printr-un modem . Odată cu răspândirea computerelor personale , funcțiile unui terminal text, de regulă, sunt îndeplinite de un computer, cel pe care rulează programul consolă sau altul. Programele Telnet și ssh permit unui utilizator să interacționeze cu un program de consolă care rulează pe un computer la distanță (care rulează de obicei UNIX) prin Internet sau o rețea locală . Programele xterm , rxvt , konsole și multe altele implementează o interfață text printr-o fereastră text în mediul X Window System .

O abordare alternativă a ieșirii consolei a fost folosită în computerele personale, în special (deși nu exclusiv) PC-ul IBM care rulează DOS . Programul poate nu numai să scoată date prin stdout, ci și să modifice direct conținutul unei anumite zone de memorie asociată cu generatorul de caractere a monitorului , ceea ce duce la o schimbare imediată a datelor vizibile pe monitor. Astfel de programe pot rula și într-un mediu Microsoft Windows . Mai mult, Windows are suport pentru ferestre de text care este în multe privințe superior celui al DOS, inclusiv pentru aplicațiile native Windows.

Linux oferă și mai multe opțiuni pentru programele de consolă. În special, chiar și fără nicio interfață grafică, mai multe programe care rulează simultan pot interacționa cu utilizatorul fără conflicte, creând iluzia că există mai multe console (console virtuale) în sistem.

În sistemele compatibile cu POSIX , cum ar fi UNIX și Linux, interacțiunea utilizatorului cu terminalul se realizează folosind un subsistem special numit abstractizare TTY .

Exemple de programe de consolă

Unele programe cu TPI pot funcționa și în modul consolă: