Panoramica delle schede adattive

Le schede adattive sono un formato di scambio di schede aperto che consente agli sviluppatori di scambiare il contenuto dell'interfaccia utente in modo comune e coerente.

Come funzionano

Gli autori di schede descrivono il contenuto come un semplice oggetto JSON. Tale contenuto verrà quindi sottoposto a rendering in modo nativo all'interno un'applicazione host, adattandolo automaticamente all'aspetto dell'host.

Ad esempio, Contoso Bot può creare una scheda adattiva tramite Bot Framework. Quando viene recapitata a Skype, avrà l'aspetto di una scheda di Skype. Se lo stesso payload viene inviato a Microsoft Teams, avrà un aspetto coerente con Microsoft Teams. Con la diffusione del supporto delle schede adattive da parte di più app host, lo stesso payload verrà attivato automaticamente all'interno di queste applicazioni, sempre con un aspetto nativo per l'app.

Per gli utenti il vantaggio è che questi elementi hanno un aspetto familiare. Il vantaggio per le app host è la possibilità di controllare l'esperienza utente. Gli autori di schede hanno l'opportunità di ottenere una maggiore copertura per il contenuto senza lavoro aggiuntivo.

Obiettivi

Le schede adattive devono essere:

  • Portabili - Per qualsiasi app, dispositivo e framework dell'interfaccia utente
  • Aperte - Librerie e schema sono open source e condivisi
  • Convenienti - Facili da definire, facili da utilizzare
  • Espressive - Destinate ai contenuti di ampio spettro che gli sviluppatori desiderano produrre
  • Puramente dichiarative - Non è necessario o consentito codice
  • Con stile automatico - In base alle linee guida per marchio ed esperienza utente dell'applicazione host

Per gli autori delle schede

Le schede adattive offrono agli autori i vantaggi seguenti:

  • Un solo schema - Un singolo formato che offre la possibilità di ridurre al minimo i costi per la creazione di una scheda, massimizzando il numero di posizioni in cui può essere usata.
  • Maggiore libertà di espressione - Il contenuto può essere allineato al messaggio con maggiore precisione, perché si ha a disposizione una tavolozza più completa.
  • Ampia copertura - Il contenuto sarà supportato da una più vasta gamma di applicazioni senza dover apprendere nuovi schemi.
  • Controlli di input - La scheda può includere controlli di input per raccogliere informazioni dall'utente che la sta visualizzando.
  • Migliori strumenti - Un ecosistema aperto significa strumenti migliori condivisi da tutti.

Per i proprietari dell'esperienza

Gli sviluppatori di app che vogliono attingere a un ecosistema di contenuti di terze parti apprezzeranno le schede adattive per i motivi seguenti:

  • Esperienza utente coerente - Si può garantire un'esperienza coerente per gli utenti, perché si è proprietari dello stile della scheda sottoposta a rendering.
  • Prestazioni native - È possibile ottenere prestazioni native grazie all'utilizzo diretto del framework dell'interfaccia utente.
  • Sicurezza - Il contenuto viene distribuito in payload sicuri in modo da non dover aprire il framework dell'interfaccia utente a markup non elaborato e script.
  • Facilità di implementazione - Librerie pronte e facilmente integrabili in qualsiasi piattaforma supportata.
  • Documentazione gratuita - Si risparmia tempo perché non è necessario inventare, implementare e documentare uno schema proprietario.
  • Strumenti condivisi - Si risparmia tempo perché non è necessario creare strumenti personalizzati.

Principi di progettazione di base

Le schede adattive sono basate su un set di principi guida che si sono rivelati utili per mantenere sotto controllo la progettazione.

Semantica invece di perfezione al pixel

Si è cercato il più possibile di concentrarsi su valori semantici e concetti, piuttosto che sul puro layout perfetto al pixel. Gli esempi di espressione semantica vengono visualizzati in vari colori e dimensioni e in elementi come FactSet e ImageSet. Tutti questi elementi consentono all'applicazione host di prendere decisioni migliori sull'aspetto effettivo.

Gli autori delle schede sono i proprietari del contenuto, l'app host è proprietaria dell'aspetto

Gli autori delle schede decidono cosa vogliono dire, ma l'applicazione in cui vengono visualizzate le schede ne determina l'aspetto nel contesto.

Semplicità ed espressività

Le schede adattive devono essere espressive e generiche, ma l'intenzione non è quella di creare un framework dell'interfaccia utente. L'obiettivo è realizzare un livello intermedio "sufficientemente espressivo" nello stesso modo in cui Markdown è sufficientemente espressivo per i documenti.

Focalizzando l'attenzione su semplicità ed espressività, con Markdown si è riusciti a creare una descrizione coerente e semplice del contenuto del documento. Nello stesso modo, Microsoft ritiene che le schede adattive possano diventare uno strumento semplice ed espressivo per descrivere il contenuto della scheda.

In caso di dubbi, tralasciare

È più semplice aggiungere un elemento in un secondo momento piuttosto che dover convivere con un errore. Se ci siamo trovati a discutere se dovremmo aggiungere qualcosa o no, abbiamo scelto di lasciarlo fuori. È sempre più facile aggiungere una proprietà che vivere con un legacy che non avremmo dovuto supportare.

Sessione dell'evento Build 2019

La sessione seguente che si è svolta alla conferenza Microsoft Build presenta le schede adattive in diversi casi d'uso.

[! VIDEO [https://www.youtube.com/embed/wT1yFr_j6IM]