Sto mettendo insieme alcuni prototipi della mia prima vera interfaccia e mi chiedo: quali sono alcuni principi fondamentali per una buona progettazione dell'interfaccia utente? Sto cercando qualcosa come un sommario dell'elenco di proiettili e forse alcune risorse che potrebbero essere utili per ogni principio.Quali sono alcuni principi di base del design dell'interfaccia?
risposta
"Non farmi pensare!", Il titolo e the book sono estremamente utili durante la progettazione di un'interfaccia utente. Alcune delle mie sezioni preferite includono:
- Creare una chiara gerarchia visiva.
- Le convenzioni sono tuoi amici.
- Happy talk deve morire.
- Le istruzioni devono morire.
- Quattro motivi per cui amo le schede.
- Il problema con Rollovers.
- Agricoltori contro Cowmen.
- Il mito dell'utente "Media".
avevo messo coerenza lassù
- Lee
Sì, purché tu sappia anche di una sciocca coerenza- http://www.scottberkun.com/essays/5-how-to-avoid-foolish-consistency. Un buon esempio di incoerenza utile sono i pulsanti back/forward in FireFox: sono deliberatamente incoerenti. – RichardOD
Come è utile questa incoerenza? Controllo sempre "Usa icone piccole" in modo che siano * coerenti *. – Alec
Nielsen fornisce this lista - che vorrei generalmente d'accordo con
- Visibilità dello stato del sistema
- partita tra sistema e il mondo reale
- Controllo utente e libertà
- Coerenza e standard
- Prevenzione degli errori
- riconoscimento piuttosto che il richiamo
- flessibilità e l'efficienza di utilizzo
- estetica e il design minimalista
- utenti aiutare a riconoscere, diagnosticare e recuperare da errori
- Aiuto e documentazione
Chiedi a Tog anche una buona lista- http://www.asktog.com/basics/firstPrinciples.html – RichardOD
Sì, ma hai visto il sito Nielsens? Scioccante! (IMO) http://www.useit.com/ - Lee –
Non è nemmeno per i miei gusti ;-) un buon consiglio però ... –
Quello che cerco sempre di r emember è "7 articoli (massimo) in una pagina/modulo." È apparso nella mia classe GUI al college (7 o 8 anni fa ora).
Mi viene in mente un fumetto web in cui avevano un design Apple seguito dal design di Google (entrambi molto semplici) seguito dal "nostro" design con dozzine di oggetti che sporcavano il modulo.
È su xkcd da qualche parte - ma non riesco a trovare l'immagine. –
Non dimenticare l'accessibilità della tastiera e, più in generale, l'accessibilità per le persone con problemi di vista (questo è il motivo per cui un sacco di interfacce utente dall'aspetto attraente fanno schifo).
Inoltre, Alan Cooper (di fama Visual Basic) ha dichiarato: "non mettere forza prima sarà", che significa che non si dovrebbe rendere più facile per le persone a fare le cose che forza Do While rendendo difficile per loro fare le cose che fanno fare fare con il tuo software.
Joel Spolsky (co-creatore di SO :)) has a book called "User Interface Design for Programmers" nonché una serie di articoli sul suo sito Web (Joel On Software) relativi a quel libro.
Un'altra grande risorsa per iniziare è Jacob Nielsen's usablity website.
Non interrompere l'utente con finestre di dialogo pop-up. Mostra un feedback che l'utente può vedere e fornisce un modo per affrontare il problema quando lo desidera.
"Il principio della sorpresa minima".
Applicare default sensibili
Visualizza risposta agli input dell'utente entro mezzo secondo.
+1 per "Mostra risposta agli input dell'utente entro mezzo secondo". –
In realtà sostengo che mezzo secondo è troppo lungo. Al momento non riesco a trovare la ricerca, ma gli umani riconoscono il ritardo in meno. Tuttavia, per essere più generico, direi "Mostra risposta entro un ragionevole lasso di tempo per il sistema in questione". Ci sono volte in cui non sono necessarie risposte rapide. – JasCav
andare a leggere Controlling Your Environment Makes You Happy e poi leggere Don't Make Me Think! A Common Sense Approach to Web Usability.
Mantenerlo semplice, non ignorare le convenzioni e imitare siti/programmi che funzionano bene.
Una rapida ricerca google ha rivelato questi:
In nessun ordine particolare (e fuori dalla parte superiore della mia testa):
- Convenzione sopra coerenza
- Affordance (chiarire dall'aspetto come e cosa fa qualcosa)
- modalità Evita
- Consenti all'utente di creare un corretto modello mentale
- proteggere i dati (rendono difficile essere distruttivo)
Se leggete Asimov, troverete questo facile da ricordare : un'interfaccia non dovrebbe, attraverso l'azione o l'inazione, consentire che il lavoro dell'utente venga distrutto inavvertitamente.
Le interfacce utente sono frequenti per gli sviluppatori di software o persone con conoscenze simili, non solo per laici. Se la tua è una tale interfaccia, puoi trarre vantaggio dall'essere un utente così come l'autore.
- Scrivere l'interfaccia.
- Mettilo via per un po ', preferibilmente abbastanza a lungo da dimenticare esattamente come funziona.
- Usalo per fare qualcosa quando sei di fretta o altrimenti distratto.
- Le cose si romperanno o ti costringono a fare le cose manualmente che non sono state coperte. Per ognuno, scrivi un rapporto bug/funzionalità. (Se hai fretta, scrivi quel tanto che basta per ricordarti più tardi.)
- Correggi/indirizza ogni rapporto.
- Andare al punto 2.
Questa esperienza vi darà spunti per scrivere interfacce migliori, alcuni dei quali possono estendersi ai laici così come la tech-savvy. Attenzione, tuttavia; non tutte le funzionalità valide per gli sviluppatori sono utili per i non-sviluppatori. I passaggi 2 e 3 hanno lo scopo di farti entrare in quella mentalità non-dev, e ottenere la maggior parte del modo; per l'ultimo miglio, non c'è alcun sostituto per un vero utente.
Utilizzo di persone reali: test, test, test.
Conosci i tuoi utenti.
- Trascorrere del tempo con loro sperimentando ciò che fanno attualmente senza il tuo software/modifiche.
- Invitali a provare a utilizzare il prototipo precedente come fattibile - forse è solo carta, vedi come reagiscono.
- Continua a spingere i tuoi prototipi di fronte a loro mentre lo sviluppo avanza.
Questo non è esattamente soddisfare le vostre esigenze di un elenco puntato, ma io consiglio comunque vivamente la lettura di The Essence of Great UI - An Overview, Why is Great UI so hard to achieve?, Great UI, Clarity, and Information Relevance, Great User Interfaces, Clarity, and Information in Parallel e Great UI: Clarity and Color on the Presentation Layer Mark Miller.
Parla anche di alcuni degli stessi concetti negli episodi dnrTVMark Miller on The Science of a Great User Experience Part 1 e Part 2.
- 1. "Dependency Inversion" e "Design to Interfaces" sono gli stessi principi?
- 2. Quali principi SOLIDI vengono violati?
- 3. Quali sono alcuni esempi di interfacce Go?
- 4. Quali sono alcuni buoni tutorial di Wireshark?
- 5. Quali sono alcuni usi intelligenti di LINQ?
- 6. Quali sono alcuni script di shell interessanti?
- 7. Quali sono gli elenchi di Pattern e Principi che un programmatore deve/dovrebbe sapere?
- 8. Quali sono alcuni usi legittimi specifici per i singleton?
- 9. Quali sono alcuni esempi di utilizzo di Nokogiri?
- 10. Quali sono alcuni usi dei metadati Clojure?
- 11. Quali sono alcuni usi delle chiusure per OOP?
- 12. Quali sono alcuni esempi di utilizzo di Datagrid di WPF?
- 13. Quali sono alcuni esempi di programmazione a livello di caratteri?
- 14. Quali sono alcuni esempi impressionanti di codice funzionale?
- 15. Quali sono alcuni comuni algoritmi di messa a fuoco?
- 16. Quali sono alcuni fantastici tutorial di disegno in Quartz 2D?
- 17. Quali sono alcuni casi d'uso per le strutture di tupla?
- 18. Quali sono alcuni usi interessanti delle funzioni di ordine superiore?
- 19. Quali sono alcuni pattern di gioco 3D comuni?
- 20. Quali sono alcuni suggerimenti per il debug di Objective-c?
- 21. Quali sono alcuni buoni metodi di debug Perl?
- 22. Principi di ingegneria del software con Javascript
- 23. Quali sono le alternative a Domain Driven Design in MVC
- 24. Quali sono i pattern DDD (Domain-Driven Design) comuni?
- 25. Quali sono alcuni dei più "puri" linguaggi orientati agli oggetti?
- 26. Principi di progettazione per i noob completi?
- 27. Quali sono alcuni usi validi per spEL (Spring Expression Language)?
- 28. Quali sono alcuni motivi per cui jquery .focus() non funziona?
- 29. Quali sono alcuni famosi progetti open-source ember.js?
- 30. Quali sono alcuni usi interessanti per gli agenti Java?
Io metterei consistenza lassù –
Non intendi "principio"? – Ash
Principi? Gli inquilini tendono ad essere chiassosi e lasciare un casino. –