Questa è una domanda filosofica.
Data un'ipotetica applicazione desktop e il desiderio di fornire aggiornamenti automatici (piuttosto che forzare le persone a visitare un sito Web, verificare un aggiornamento, scaricare un aggiornamento, installare), quale dei due è più un approccio di "best practice"?
Come iTunes , controlla se esiste una nuova versione e richiede all'utente di scaricare la nuova versione. In tal caso, scarica un eseguibile di installazione completo (in questo caso, un file di Windows Installer (.msi)) che installa la versione completa (non solo un aggiornamento alla versione precedente - troppo da gestire se ci sono più versioni là fuori) . Quindi, diciamo, è la versione 10.1.1 - sia che tu stia installando fresco o aggiornando, usi lo stesso file. Dopo il download, indica all'utente di chiudere l'applicazione ed eseguire autonomamente il file di installazione.
Simile all'altra, verifica la presenza di una nuova versione e richiede all'utente di scaricarlo, ma invece di scaricare un file eseguibile e richiedere all'utente di eseguirlo, lo esegue effettivamente per loro - chiudendo il programma che hanno aperto, acquisendo la sicurezza necessaria per installare i file.
Problemi con il n. 2: molti problemi relativi alla chiusura del programma, poiché il programma può aprire altri programmi ( Outlook ed Excel ) o se l'utente si trovasse nel mezzo di qualcosa. Anche per quanto riguarda la sicurezza, è necessario l'accesso dell'amministratore locale per l'installazione, e se non lo si dispone? Nelle versioni successive di Windows, non puoi semplicemente ignorare la sicurezza della persona.
Problemi con il n. 1: alcune persone credono che questo sarà troppo difficile, troppo sforzo per l'utente finale.
Preferirei fortemente andare con il numero 1 perché risparmierà 80-120 ore sul mio progetto ed è più semplice da implementare e mantenere. Tuttavia, abbiamo persone che si sentono fortemente da tutte le parti.
Qual è la migliore pratica per questo genere di cose?