Una vista è come i dati sono presentati o visualizzati. Una finestra è l'artefatto fisico o dispositivo che viene utilizzato per creare un'istanza di una vista per un utente. Un'interfaccia utente è la combinazione di visualizzazioni e controlli di Windows che consente a un utente di visualizzare i dati e di modificare il materiale presentato nelle viste e in che modo viene presentato il materiale.
Questa è l'architettura di base dell'architettura Model View Controller .
Una finestra è una finestra attraverso cui è visibile una vista. Una vista può essere presentata attraverso più finestre con ogni finestra che fornisce visibilità di parte di una vista.
Come esempio, puoi dare un'occhiata semplificata a un'applicazione IDE come Eclipse o Visual Studio.
I dati primari sono il codice sorgente in uno o più file. L'IDE fornisce diverse viste del codice del codice sorgente. Una vista può essere il codice sorgente in un particolare file come linee di testo e questa vista è presentata in una finestra. È possibile dividere la finestra in due finestre controllate in modo indipendente che consentono alle due finestre di mostrare parti diverse del file del codice sorgente. C'è ancora una vista, il codice sorgente, comunque puoi guardarlo in un modo diverso, usare due finestre diverse in modo da guardare due diverse parti della vista che sono sufficientemente separate che se si usa una singola finestra entrambe le parti non possono essere rese visibili allo stesso tempo a causa delle limitazioni del dispositivo di visualizzazione.
È possibile aprire un'altra vista del codice sorgente per mostrare una finestra che visualizza una vista del codice sorgente come una serie di dichiarazioni di funzioni senza mostrare il codice sorgente presente in ciascuna funzione. La serie di funzioni è presentata in un grafico di chiamata. Di nuovo lo stesso codice sorgente e viene visualizzato in una finestra, ma ora la vista è diversa dall'immagine di un albero grafico piuttosto che da linee di codice sorgente.
Apri un'altra View, questa volta mostrandoti come i file del codice sorgente sono organizzati in più progetti in una vista ad albero con ogni progetto che è un nodo che quando viene cliccato si apre per mostrare i file che lo compongono.
Nella maggior parte dei framework grafici dell'interfaccia utente tutti gli artefatti visualizzati sono Windows di qualche tipo. Un pulsante è una finestra, una finestra di testo è una finestra, una finestra immagine è una finestra, ecc. Una finestra è l'origine o il sink della maggior parte degli eventi nell'interfaccia utente. Viene premuto un tasto sulla tastiera che viene avvolto in un messaggio e fornito alla finestra che attualmente ha il focus della tastiera. La finestra su cui si trova il cursore del mouse è solitamente la finestra che ottiene l'evento clic del mouse.
Una vista non è un tipo fisico di una cosa come una finestra. Una vista è un'idea più astratta di come vengono presentati i dati. Una vista utilizza una o più finestre per presentare i dati in un formato particolare. Il formato può essere linee di testo o possono essere immagini e icone insieme al testo.
L'interfaccia utente è il pacchetto completo di come le varie viste e Windows sono riunite per fornire un'interfaccia che permetta a un utente di vedere i dati in vari modi, per controllare come l'interfaccia presenta i dati tramite Views e possibilmente per modificare i dati.
Ecco un esempio di Visual Studio 2013. L'interfaccia utente totale sono le varie finestre e controlli insieme alle viste e al comportamento dinamico dell'applicazione, in quanto l'utente manipola vari controlli usando il mouse e la tastiera.
Questa schermata mostra una finestra divisa che mostra due parti della stessa vista di un file di codice sorgente come testo. Una finestra divisa è in realtà due finestre con controlli della barra di scorrimento incorporati in una finestra più grande. E questa finestra più grande è a sua volta contenuta nella finestra del frame dell'interfaccia utente che contiene altri Windows.
EccounaschermatadellostessoprogettodiVisualStudio2013chemostrapiùvistedeglistessidatiutilizzandofinestrediverseperognivista.QuestoèunfilesorgenteXAMLconlostrumentodesignerVisualizzainunafinestraconilcodicesorgenteXAMLVisualizzainunasecondafinestrasotto.C'èancheunafinestraProprietànell'angoloinbassoadestradellaGUIIDEdiVisualStudiochefornisceunavistadiversadell'oggettoXAMLselezionato.ÈpossibilemodificareilcodicesorgenteXAMLmodificandoiltestonelcodicesorgenteVisualizzaoutilizzandoicontrollinellafinestraProprietàoutilizzandoicontrollinellafinestradellostrumentodiprogettazione.