Uscita applicazione orientata agli oggetti

3

Stiamo scrivendo un programma che esegue uno "aggiornamento automatico del software all'avvio". Se il software trova pronto un aggiornamento, avvierà il processo di aggiornamento e quindi uscirà (e non eseguirà il programma).

Abbiamo due diversi design su come scrivere la logica dell'aggiornamento.

Progettazione 1: la nostra classe di AutoUpdate gestisce tutto, incluso uscire dal programma se necessario.

Progetto 2: AutoUpdate esegue la maggior parte della logica e, se vuole che il programma esca, restituisce un valore che lo indica e Main () si occupa di uscire.

codice saggio, la funzione principale sarebbe simile a:

Design 1 (AutoUpdate si chiude internamente se necessario)

Main()
{
    AutoUpdate.DoAutoUpdate();
    RunMainProgram();
}

Design 2 (AutoUpdate restituisce true se è necessario uscire, Main gestisce l'uscita)

Main()
{
    if (AutoUpdate.DoAutoUpdate() == false)
    {
        RunMainProgram();
    }
}
    
posta David 23.06.2011 - 19:05
fonte

1 risposta

10

Preferisco il secondo , in quanto è molto più evidente cosa sta succedendo. Lo scriverei anche usando l'operatore ! , ma questa è una preferenza personale poiché == false è più da leggere. :)

Main()
    {
        if (!AutoUpdate.DoAutoUpdate())
        {
            RunMainProgram();
        }
    }
    
risposta data 23.06.2011 - 19:10
fonte

Leggi altre domande sui tag