Principi

LEVERAGE ON USERS KNOWLEDGE: Utilizziamo lo conoscenze pregresse dell’utente, quindi

  1. use standard widgets
  2. use standard gesture
  3. usare metafore (interruttori, cestino)

DISCOVERABILITY:

  • non nascondere i controlli
  • ad esempio non nascondere le azioni sotto uno swipe (tipo che se fai swipe su una chat poi escono altri bottoni)

FEEDBACK - action and reaction:

  • ad ogni azione deve essere associata una reazione
  • ad esempio su una pagina che posso scrollare se sto tutto sopra (q quindi teorixamente non posso più dalire) se provo a scrollare verso l’altro posso, l’intefaccia sale comunque poco (ma richiede più energia) anche se non c’è niente da vedere, quando lascio fa effetto molla e torna in dietro, cosil’utente capisce che quella schermata si può scrollare, ma non va avanti solo perché finito il contenuto

MEMORY

  • se un utente va su una nuova schermata, può essere utile mettere qualcosa che fa ricordare dove si stava prima.

USER in CONTROL:

  • Cancel se l’operazione è importante e non reversibile mettere sempre un tasto cancel vicino al confirm (e non reversibile) (es. pagamento, connessione a wifi)
  • Undo si utilizza dopo un operazione effettuata (reversibile) (es. modifica file)
  • PROGRESS BARS usa le progress bar, cosi l’utente capisce che l’attesa è dovuta a un motivo e non ad un errore

CONSISTENCY (coerenza)

  • same gesture same action (non possiamo fare due gesture uguali ma che fanno cose diverse in parti diverse dell’app)
  • AVOID MODES (è meglio non utilizzare modalità, tipo modalità scrittura e lettura, che cambiano le cose che si possono fare con la stessa interfaccia)

Material & Color

Layer e Distanze:

Anche se vediamo una schermata 2D la dobbiamo immaginare in 3d can layer e distanze tra gli elementi.

  • oss: l’ombra può essere utilizzata per indicare la distanza, più è diffusa più l’oggetto è lontano dal layer sottostante

Componenti

LISTS: multiple line items in a vertical arrangement as a single continuous element

CARDS: piece of paper that contains unique related data

ALERTS:

  • inform about critical situations
  • require users to make decisions
  • system generated

BOTTOM SHEETS

  • present a set of actions
  • user solicited