Casi d'uso comuni

L'obiettivo principale di Visual Studio Live Share è quello di consentire agli sviluppatori di collaborare tra loro in modo più semplice, senza introdurre alcuna opinione su quando e come eseguire tale operazione (ad esempio, quale strumento di comunicazione da usare, la metodologia del software "Right" o il flusso di lavoro SCM). In questo modo, gli strumenti sono in grado di supportare le interazioni che si verificano naturalmente e con la frequenza necessaria, ma in modo da ottenere un complimento come si preferisce lavorare.

In questo documento vengono illustrati alcuni casi d'uso per i quali Visual Studio Live Share è già usato e viene descritto il modo in cui sono attualmente supportati e i modi in cui si prevede di ottimizzarli ulteriormente (in base ai commenti e suggerimenti). Se si usa Live Share per un elemento che non è già stato analizzato o si ritiene che sia possibile migliorare per supportare un caso d'uso specifico , inviare unanotifica.

Assistenza rapida

Quando si verifica un problema, ad esempio il tentativo di risolvere un bug, la configurazione dell'ambiente, è possibile usare Visual Studio Live Share per richiedere immediatamente assistenza da un altro peer. In molti casi, non è immediatamente chiaro il contesto in cui la persona che fornisce assistenza dovrà, quindi Live Share facilita l'accesso all'intero progetto e se/in base alle esigenze, la condivisione incrementale, ad esempio un server locale, un terminale di sola lettura. Non è necessario inviare frammenti di codice e/o messaggi di errore.

Inoltre, dal momento che Live Share consente di condividere la sessione di debug attiva, senza richiedere "Guest" per installare gli SDK di piattaforme necessari (ad esempio, Node.js, go, .NET Core) o le estensioni degli strumenti, può essere utile per velocizzare la risoluzione e prevenire le situazioni di "non eseguire la ripetizione del computer". Live Share consente di condividere lo stato di debug con altri utenti, per qualsiasi linguaggio di programmazione o ambiente di runtime (ad esempio, Kubernetes, React native app) e quindi, indipendentemente da ciò che si necessita di aiuto, è possibile condividerlo.

Orario di ufficio

Molte aziende e istituzioni didattiche (ad esempio, scuole, corsi di formazione online) forniscono supporto ai propri clienti/dipendenti/studenti in orari prestabiliti e, in genere, con una frequenza ricorrente (ad esempio, ogni venerdì da 3-5 PM). In questo modo, le "ore di ufficio" sono semplicemente una forma pianificata di "assistenza rapida", anziché essere interamente ad hoc. Live Share semplifica la Guida rapida, dal momento che l'esperto fornisce assistenza può partecipare immediatamente a una sessione di collaborazione e rispondere alle domande, senza dover configurare il computer.

Programmazione di coppie

Uno degli scenari più usati per Visual Studio Live Share è "programmazione abbinata": due o più sviluppatori, che collaborano con un'attività condivisa, con l'obiettivo di condividere le conoscenze, aumentare la coesione del team e potenzialmente la qualità del prodotto. L'aspetto esatto della programmazione delle coppie può variare in modo significativo tra i team e le situazioni, a seconda dei seguenti (tra gli altri):

  1. Ambito dell'attività in cui viene eseguita la collaborazione, ad esempio un bug, una storia utente

  2. Durata prevista della sessione di collaborazione (ad esempio, due minuti, un'ora, a tempo pieno, una volta alla settimana, da definire)

  3. Il numero di persone che interessano (ad esempio, due, l'intero team)

  4. Ruolo di ogni partecipante (ad esempio "driver", Observer/revisore, esperto in materia)

  5. Prossimità dei partecipanti, ad esempio con percorso condiviso nello stesso edificio, in tutto il mondo

Live Share è stato progettato per essere indipendente da tutte le problematiche menzionate in questo ambito, ma si impegna a supportare la programmazione di coppie che è completamente "opportunistica" e adatta alla propria situazione. Ciò premesso, a differenza di due sviluppatori che condividono una singola tastiera e schermo, Live Share Abilita una forma di programmazione di coppie che consente agli sviluppatori di lavorare su un obiettivo condiviso, senza rimuovere la propria autonomia o le preferenze dell'ambiente. È possibile lavorare in modo indipendente o insieme per consentire a ogni partecipante di portare il proprio processo di pensiero alla collaborazione.

Per suddividere ulteriormente il caso d'uso, gli elementi seguenti rappresentano forme di programmazione delle coppie che abbiamo osservato persone che usano Live Share per:

Programmazione Mob

La programmazione di Mob (o la programmazione Swarm) è essenzialmente una programmazione abbinata, ma con più di due persone. Pertanto, anche tutti i vantaggi di Live Share per la programmazione delle coppie si applicano allo stesso modo. Alcuni team, inoltre, eseguono "swarming" in base alle esigenze, ad esempio il team che si occupa di un'esercitazione antincendio, anziché a tempo pieno.

Attualmente Live Share supporta fino a 30 Guest all'interno di una sessione.

Suggerimento

Per abilitare 30 Guest in una sessione:

  • Vs code: aggiungere "LiveShare. increasedGuestLimit": "true" per settings.js
  • Visual Studio: Imposta strumenti > opzioni > Live Share > maggiore limite Guest a "true"

Competizioni di codifica/hack-A-Thons

I concorsi di codifica e i hack-a-thons sono in effetti varianti a breve termine e a attività singola della programmazione mob. Anche i membri del team e il ruolo corrente sono potenzialmente dinamici. Dato che questo caso di utilizzo è in genere anche sensibile al tempo, la possibilità di collaborare in tempo reale senza dover adottare uno strumento completamente nuovo e la possibilità di interagire insieme, senza essere limitati a una singola schermata o a una tastiera, può passare a una modalità di registrazione per aumentare la velocità.

Poiché i partecipanti a questo ambiente potrebbero non essere sempre completamente "attendibili", è possibile rimuovere (e bloccare) un Guest da una sessione in qualsiasi momento. In questo modo sono disponibili "host" con il controllo completo sull'ambiente.

Progetti del gruppo School

I progetti di gruppo hanno un aspetto molto simile a quello della programmazione di Mob, in cui più studenti lavorano insieme e possono passare facilmente da un'unica attività a un'altra o lavorare su attività separate simultaneamente. Invece di basarsi semplicemente sul controllo della versione per collaborare in modo asincrono, è possibile usare Live Share per collaborare in tempo reale, che può aiutare i vantaggi sociali ed educativi di lavorare in un gruppo.

Streaming per sviluppatori

Lo streaming degli sviluppatori (via TIC o mixer) è diventato un nuovo tipo di formazione interessante. Sebbene Live Share non abbia lo scopo di sostituire le piattaforme di trasmissione (anche se la richiesta è stata ascoltata), fornisce un mezzo per consentire all'host di associare il programma a uno o più Guest e quindi di trasmettere tale interazione. In questo modo, i visualizzatori possono potenzialmente saperne di più visualizzando l'interazione naturale e il processo di pensiero di due o più sviluppatori, che potrebbero anche collaborare in sistemi operativi completamente distinti e IDE.

Creazione di prototipi/progetto

Quando un team sta iniziando un nuovo progetto/microservizio, oppure crea un prototipo/spiking di una nuova funzionalità, spesso può essere utile collaborare per realizzare rapidamente progressi ed esplorare nuove idee. Poiché non è ancora stato eseguito il commit della nuova base di codice in un repository condiviso, Live Share consente a tutti di partecipare al processo iterativo, indipendentemente dal fatto che si trovino nello stesso ufficio.

Formazione interattiva

In generale, Live Share cerca di assistere gli sviluppatori nella condivisione della conoscenza tra il team. L'istruzione è un caso d'uso fondamentale per Live Share e supporta questa operazione in modo particolarmente efficace consentendo a ogni partecipante di interagire con la codebase su cui viene eseguita la collaborazione, anziché semplicemente guardare una schermata. Tutti imparano in modi diversi e, di conseguenza, offrendo l'indipendenza a uno "studente", sono in grado di sfruttare i vantaggi dell'istruzione fornita, senza dover sacrificare la possibilità di esplorare le proprie idee lungo il percorso.

Tutoraggio peer/onboarding

Quando si introduce uno sviluppatore per una nuova codebase, area funzionale, tecnologia e così via, è possibile usare Live Share per illustrare il progetto (usando Follow Mode ), in modo da poter proseguire con l'utente, ma dal proprio IDE personale. Poiché Live Share consente ai "Guest" di spostarsi in modo indipendente nel progetto (ad esempio, aprendo un file, eseguendo un Peek Definition ), possono seguire le opzioni Consenti, ma anche eseguire esplorazioni rapide in base alle esigenze (ad esempio "Hmm, cosa fa questa funzione?").

Team Brown bags

Il team Brown Bags è effettivamente come il mentoring del peer, ma è stato presentato a un intero team e potenzialmente, più mirato a socializzare le conoscenze più utili, in contrapposizione al supporto di onboarding e/o all'assistenza per un'attività specifica.

Lezioni in aula

Quando gli insegnanti insegnano una lezione, possono usare Live Share per condividere il progetto con gli studenti, anziché semplicemente presentare il proprio schermo. In questo modo, l'intera classe può proseguire con il docente, pur essendo in grado di interagire con il progetto autonomamente. Inoltre, l'insegnante può chiedere a singoli studenti di assistere alla risoluzione di una particolare parte della lezione (ad esempio, "quale metodo è necessario chiamare qui?"), che può essere utile per gli aspetti sociali della classe, senza richiedere agli studenti di passare all'inizio della stanza o anche essere fisicamente presenti nella stessa stanza (ad esempio, corsi online).

Per facilitare le impostazioni della classe, Live Share Abilita la condivisione in modalità di sola lettura. Gli insegnanti possono usare la modalità di sola lettura per consentire loro di condividere i propri progetti con gli studenti senza doversi preoccupare di apportare modifiche non necessarie o accidentali.

Inoltre, Live Share dispone del supporto per consentire fino a 30 Guest che si uniscono a una sessione di collaborazione. In questo modo, i docenti possono avere un'intera classe join in una sessione e visualizzare il codice insieme.

Per abilitare questa funzionalità:

  • Vs code: Aggiungere "LiveShare. increasedGuestLimit": "true" per settings.js.
  • Visual Studio: Imposta strumenti > opzioni > Live Share > maggiore limite Guest a "true"

Per ottimizzare completamente Live Share per questo scenario, è necessario semplificare il modo in cui vengono avviate le sessioni (#422).

Revisioni del codice

Le richieste pull sono un metodo efficace per collaborare con altri utenti, ma in genere rappresentano il completamento di un'attività (esclusi i pull "WIP") e la volontà di unirla in. Spesso, il feedback fornito in una richiesta pull potrebbe essere stato fornito in precedenza e, di conseguenza, è potenzialmente possibile che i team possano cercare in modo semplice e continuo consigli dai propri colleghi, invece di attendere il completamento di un'attività.

Poiché Live Share consente di condividere immediatamente il progetto con altri utenti, può essere usato per abilitare le revisioni del codice/ad-hoc "informale", dove invece di richiedere assistenza, si sta semplicemente cercando un input per assicurarsi che la direzione e/o l'approccio si allinei con altri utenti. Questo può potenzialmente aiutare le richieste pull successive a essere più veloci e certamente aiuta a socializzare le conoscenze nel team.

Poiché Live Share consente inoltre di condividere una directory arbitraria, è possibile usarla per eseguire le revisioni del codice, anche se non si usa attualmente il controllo della versione (se necessario) o se il team non usa le richieste pull (ad esempio, si esegue lo sviluppo basato sul trunk).

Live Share attualmente non condivide le differenze del controllo del codice sorgente, che è una parte essenziale del contesto quando viene usata per le revisioni del codice. Si tratta di una guida di orientamento e tutti i commenti e suggerimenti relativi alla priorità sono molto apprezzati (Voto 👍 qui).

Interviste tecniche

Quando si esaminano i candidati per una posizione dello sviluppatore, spesso è utile andare oltre le discussioni lavagne e osservare invece che risolve un problema di codifica all'interno di un IDE effettivo (soprattutto se il team o l'organizzazione ha "standardizzato" in uno strumento che si vuole visualizzare). Questo non solo consente loro di lavorare in modo che sia potenzialmente più naturale/confortevole (la maggior parte degli sviluppatori non codificano sulle lavagne), ma anche di fornire feedback/assistenza immediata mentre funzionano (ad esempio, errori di compilazione, IntelliSense). Molte volte, è più importante comprendere il processo del candidato, in contrapposizione alla capacità di memorizzare la sintassi esatta e/o i nomi di API. In questo modo, Live Share offre un'esperienza simile a quella di una sessione di programmazione delle coppie, ma consente al partecipante di trovarsi nel proprio ambiente (incluse le impostazioni del sistema operativo, ad esempio l'accessibilità) e funziona ugualmente anche per le interviste locali o remote. L'aggiunta di una sessione dal Web consente al candidato di utilizzare l'ambiente di sviluppo del team e la codebase senza scaricare alcun elemento.

Inoltre, lo sviluppo reale è più che scrivere semplicemente codice. Poiché Live Share supporta anche il debug condiviso, le attività e i terminali, consente ai revisori di osservare i candidati durante la diagnosi di un problema e fornire loro gli strumenti appropriati necessari per risolverli (ad esempio, eseguire il debug, eseguire test). Poiché tutto il contesto è remoto dal computer dell'host, i candidati possono passare rapidamente all'"ambiente di colloquio" senza dover configurare il computer (oltre all'installazione di Live Share). I team possono quindi mantenere un repository di app di intervista condivise (o usare il codice di base del prodotto effettivo), che possono essere clonate e condivise con i candidati, semplicemente inviando loro l'URL della sessione prima di ogni intervista.

Lavorare in modalità remota

Lavora da casa senza doverti preoccupare della sincronizzazione del computer di sviluppo domestico con le tue attività. Terminare rapidamente la riga di codice da casa senza dover effettuare il push dal lavoro, clonare il repository a casa e trovare la riga esatta su cui si stava lavorando. Connettersi da un computer portatile leggero al proprio computer di lavoro.

Vedi anche

Si verificano problemi? Vedere la risoluzione dei problemi o inviare un feedback.