Interfață cu mai multe documente - Multiple document interface
O interfață cu documente multiple ( MDI ) este o interfață grafică de utilizator în care mai multe ferestre se află sub o fereastră monoparentală. Astfel de sisteme permit adesea ferestrele copil să înglobeze și alte ferestre în interiorul lor, creând ierarhii complexe imbricate . Acest lucru contrastează cu interfețele cu un singur document ( SDI ), unde toate ferestrele sunt independente unele de altele.
cuprins
Comparație cu interfața unui document unic
În comunitatea utilizabilității , s-a dezbătut mult dacă este preferabil documentul multiplu sau documentul unic. Companiile de software au folosit ambele interfețe cu răspunsuri mixte. De exemplu, Microsoft a schimbat aplicațiile Office din SDI în modul MDI și apoi înapoi la SDI, deși gradul de implementare variază de la o componentă la alta. SDI poate fi mai util în cazurile în care utilizatorii comută mai des între aplicații separate decât între ferestrele unei aplicații.
MDI poate fi confuz dacă nu are informații despre ferestrele deschise în prezent. În aplicațiile MDI, dezvoltatorul de aplicații trebuie să ofere o modalitate de a comuta între documente sau de a vizualiza o listă de ferestre deschise, iar utilizatorul ar trebui să folosească un meniu specific aplicației („lista ferestrei” sau ceva similar) pentru a comuta între documente deschise. Acest lucru este diferit de aplicațiile SDI în care bara de sarcini sau managerul de sarcini al managerului de ferestre afișează ferestrele deschise în prezent. În ultimii ani a devenit din ce în ce mai frecvent ca aplicațiile MDI să folosească „file” pentru a afișa ferestrele deschise în prezent. O interfață în care filele sunt folosite pentru a gestiona documentele deschise este denumită „ interfață de document cu file ” (TDI). O altă opțiune sunt geamurile sau ferestrele „cu gresie” , care facilitează evitarea suprapunerii conținutului.
Unele aplicații permit utilizatorului să comute între aceste moduri la alegerea lor, în funcție de preferințele personale sau de sarcina la îndemână.
Aproape toate seturile de instrumente grafice ale interfeței de utilizator până în prezent oferă cel puțin o soluție pentru proiectarea MDI-urilor, cu o excepție fiind API-ul Apple Cocoa . Setul de instrumente Java GUI, Swing , de exemplu, furnizează clasa javax.swing.JDesktopPanecare servește ca un container pentru cadre individuale (clasă javax.swing.JInternalFrame). GTK + nu are suport pentru MDI.
avantaje
- Cu mai multe interfețe de documente (și, de asemenea , interfețe de document cu file ), o singură bară de meniu și / sau bara de instrumente este partajată între toate ferestrele copilului, reducând dezordinea și sporind utilizarea eficientă a spațiului ecranului. Acest argument este mai puțin relevant pentru un sistem de operare care folosește o bară de meniu comună.
- Ferestrele pentru copii ale unei aplicații pot fi ascunse / arătate / minimalizate / maximizate în ansamblu.
- Caracteristici precum "Tile" și "Cascade" pot fi implementate pentru ferestrele pentru copii.
- Autorii aplicațiilor multiplă platformă le pot oferi utilizatorilor lor un comportament constant al aplicațiilor între platforme.
- Dacă mediul de ferestre și sistemul de operare nu au o gestionare bună a ferestrei, autorul aplicației îl poate implementa singur.
- Modularitate: un manager de ferestre avansat poate fi modernizat independent de aplicații
- Fără o fereastră de cadru MDI, barele de instrumente flotante dintr-o aplicație pot aglomera spațiul de lucru al altor aplicații, ceea ce poate confunda utilizatorii cu interfața.
Dezavantaje
- Poate fi dificil de pus în aplicare pe desktop-uri folosind mai multe monitoare, deoarece fereastra părinte poate avea nevoie de a extinde două sau mai multe monitoare, ascunzând secțiuni.
- Desktop-urile virtuale nu pot fi răspândite de copiii MDI. Cu toate acestea, în unele cazuri, acest lucru poate fi rezolvat prin inițierea unei alte ferestre părinte; acesta este cazul în Opera și Chrome , de exemplu, care permite trageți filele / ferestrele copil în afara ferestrei părinte pentru a începe propria fereastră părinte. În alte cazuri, fiecare fereastră copil este, de asemenea, o fereastră părinte, formând un nou MDI „virtual” [1] .
- MDI poate face mai dificil să lucrezi cu mai multe aplicații simultan, restricționând modalitățile prin care ferestrele din mai multe aplicații pot fi aranjate împreună, fără a oculta reciproc.
- Meniul partajat s-ar putea schimba, ceea ce poate provoca confuzia unor utilizatori.
- Ferestrele pentru copii MDI se comportă diferit de cele din aplicațiile de interfață cu un singur document , necesitând utilizatorilor să învețe două concepte de ferestre subtil diferite. În mod similar, fereastra părinte MDI se comportă ca desktopul în multe privințe, dar are suficiente diferențe pentru a confunda unii utilizatori.
- Profund cuibărit, ierarhiile de ramificare ale ferestrelor copilului pot fi confuze.
- Mulți manageri de ferestre au suport integrat pentru manipularea grupurilor de ferestre separate, care este de obicei mai flexibil decât MDI, prin faptul că ferestrele pot fi grupate și neagrupate în mod arbitrar. O politică tipică este de a grupa automat ferestrele care aparțin aceleiași aplicații. Aceasta poate face ca MDI să fie redundant, oferind o soluție la aceeași problemă.
- Controalele și tastele rapide învățate pentru aplicația MDI s-ar putea să nu se aplice pentru alții, în timp ce cu un Window Manager avansat, mai multe setări de comportament și preferințe ale utilizatorului sunt partajate în aplicațiile client din același sistem
Exemple de aplicație
- Internet Explorer 6 : o aplicație SDI tipică
- Mediul de dezvoltare Visual Studio 6 : un MDI modern tipic
- Visual Studio .NET : MDI sau TDI cu meniul „Fereastră”, dar nu ambele
- Opera : Combinația de MDI și TDI (o adevărată interfață MDI cu o bară de taburi pentru acces rapid).
- Chrome : combinație de MDI și TDI.
- Paint.NET : TDI bazat pe miniaturi
- Firefox : TDI în mod implicit, poate fi SDI
- Kate : editor de text conceput pentru compilarea software KDE , cu funcții avansate și un MDI sofisticat
- KWrite : Un alt editor de text conceput pentru compilarea software KDE , cu o SDI simplificată, dar care împărtășește multe dintre caracteristicile lui Kate printr-un back end reciproc
- GIMP : SDI cu ferestre plutitoare (MDI este disponibil ca o opțiune numită "Modul cu o singură fereastră" începând cu versiunea 2.8 [2] ).
- GIMPshop : o furculiță a GIMP care urmărește să se asemene mai mult cu Adobe Photoshop. Versiunea Windows are MDI limitat. [3]
- AmiBroker : este o aplicație cu mai multe interfețe de documente (MDI) (pentru analiza tehnică și tranzacționarea piețelor financiare). Pe scurt înseamnă că vă permite să vă deschideți și să lucrați cu mai multe ferestre în același timp.
- Adobe Photoshop : MDI sub MS Windows. În versiuni mai noi, barele de instrumente se pot deplasa în afara ferestrei cadrului. Ferestrele pentru copii pot fi în afara cadrului, dacă nu sunt minimizate sau maximizate.
- Adobe Acrobat : MDI până la versiunea 7.0 (numai pentru Windows); SDI implicit în 8.0 (configurabil la MDI); SDI doar în 9.0; MDI (cu o interfață cu file) în versiunea 2015.
- Microsoft Excel 2003: SDI dacă porniți instanțe noi ale aplicației, dar MDI dacă faceți clic pe meniul „Fișier → Nou” (dar Windows opțional apare în bara de activități a sistemului de operare). SDI abia din 2013.
- Microsoft Word 2003: MDI până la Microsoft Office 97. După 2000, Word are o interfață Windows multiplu de nivel superior , expunându-se astfel la instanțe individuale SDI, în timp ce sistemul de operare îl recunoaște ca o singură instanță a unei aplicații MDI. În Word 2000, aceasta a fost singura interfață disponibilă, dar 2002 și ulterior au oferit MDI ca opțiune. Clasele Microsoft Foundation (pe care Office se bazează în mod larg) acceptă această metaforă începând cu versiunea 7.0, ca o caracteristică nouă în Visual Studio 2002. SDI abia din 2013.
- UltraEdit : Combinație de MDI și TDI (o adevărată interfață MDI cu o bară de taburi pentru acces rapid).
- VEDIT : Combinație de MDI și TDI (o adevărată interfață MDI cu o bară de taburi pentru acces rapid). Ferestrele speciale "cu dimensiune completă" acționează ca ferestrele maximizate, dar permit utilizarea ferestrelor suprapuse mai mici în același timp. Mai multe instanțe de Vedit pot fi pornite, ceea ce îi permite să fie utilizat ca o aplicație SDI.
- Notepad ++ , Sublime Text , PSPad , TextMate și mulți alți editori de text: TDI
- EmEditor : Opțiuni pentru SDI sau MDI.
- Macromedia Studio pentru Windows: o interfață hibridă; TDI cu excepția cazului în care ferestrele de document nu sunt maximizate. (Sunt maximizate implicit.)
- Corel Wordperfect : MDI. Un utilizator poate deschide mai multe instanțe de WP cu un singur document în fiecare, dacă are mai multe versiuni de WordPerfect instalate pe computerul său. Versiunile recente mențin o listă de documente deschise pentru o fereastră dată în bara de stare din partea de jos a ferestrei, oferind o variantă a TDI.
- Zeus pentru Windows : Combinație de MDI și TDI (o adevărată interfață MDI cu o bară de taburi pentru acces rapid).
- mIRC : MDI implicit, poate funcționa și în modul SDI
Interfață în stil IDE
Aplicațiile computerizate grafice cu interfață stil IDE (IDE) sunt cele ale căror ferestre copil se află sub o fereastră monoparentală (de obicei cu excepția ferestrelor modale ). O interfață în stil IDE se distinge de Interfața de documente multiple (MDI), deoarece toate ferestrele copil dintr-o interfață în stil IDE sunt îmbunătățite cu funcționalitate suplimentară care nu este obișnuit disponibilă în aplicațiile MDI. Din această cauză, aplicațiile în stil IDE pot fi considerate un superset funcțional și descendent al aplicațiilor MDI.
Exemple de funcționalități îmbunătățite pentru ferestre pentru copii includ:
- Ferestre pentru copii andocabile
- Ferestre pentru copii pliabile
- Interfață de documente pentru tabele
- Ferestrele independente ale ferestrei părinte
- Împărțitori GUI pentru redimensionarea sub-panelor din fereastra părinte
- Persistența pentru aranjarea ferestrelor
Ferestre pentru copii pliabile
O convenție comună pentru ferestrele copil în aplicațiile în stil IDE este posibilitatea de a prăbuși ferestrele copilului, fie atunci când este inactiv sau când este specificat de utilizator. Ferestrele pentru copii care sunt prăbușite se vor conforma cu una dintre cele patru granițe exterioare ale ferestrei părinte, cu un fel de etichetă sau indicator care le permite să fie extinse din nou.
Interfață de documente pentru tabele
Spre deosebire de aplicațiile (MDI), care permit în mod obișnuit o singură interfață cu file pentru fereastra părinte, aplicațiile cu interfață în stil IDE permit filele pentru organizarea uneia sau a mai multor sub-zone ale ferestrei părinte.
Exemple de aplicații în stil IDE
- NetBeans
- dBASE
- Eclipsă
- Visual Studio 6
- Visual Studio .NET
- RSS Bandit
- jedit
- MATLAB
- Microsoft Excel când se află în modul MDI (vezi mai sus).
Macintosh
Mac OS și GUI-ul său sunt centrate pe documente în loc de ferestre sau centrate pe aplicații. Fiecare fereastră de document este un obiect cu care utilizatorul poate lucra. Bara de meniu se schimbă pentru a reflecta orice aplicație din care face parte fereastra din față. Ferestrele aplicațiilor pot fi ascunse și manipulate ca grup, iar utilizatorul poate comuta între aplicații (adică grupuri de ferestre) sau între ferestre individuale, ascunzând automat paletele și majoritatea programelor vor rămâne în funcțiune chiar și fără ferestre deschise. Într-adevăr, înainte de Mac OS X , era imposibil de interpusat Windows între mai multe aplicații.
În ciuda acestui fapt, unele aplicații neobișnuite care încalcă liniile directoare ale interfeței umane (în special Photoshop ) prezintă un comportament diferit.
Vezi si
- Interfață de utilizator grafică
- Comparația interfețelor documentelor
- Interfață de documente cu tablă
- Manager de ferestre de gresie
- Mediu de dezvoltare integrat
linkuri externe
- Argumentele Hall of Shame pentru interfață împotriva MDI
- Formulare MDI folosind formulare C # MDI în .net folosind C # și Visual Studio 2010 Express