Domanda

SRP ( PDF versione; HTML versione) afferma che

  

Non ci dovrebbe essere più di un motivo per una classe di modificare

Quando si dà un'occhiata a Outlook, finestra Calendario Evento, ha "Salva e Chiudi".

alt text

Così, quando le funzionalità di uno o di entrambi Salva o Chiudi cambiamenti, che il pulsante dovrebbe cambiare. Essa viola ovviamente SRP.
Questa funzionalità sia di risparmiare tempo e comoda perché è ciò che la maggior parte degli utenti di si aspettano da fare quando si salva una nomina su un calendario.

Ma ora, la mia domanda è, quando altro si violano SRP diverso quando la funzione deve essere usuable in Outlook?

È stato utile?

Soluzione

SRP non si applica alle interfacce utente. Tenete a mente che anche se il pulsante si chiama "Salva e chiudi" non ci può essere senza dubbio due metodi separati o tipi per gestire la funzionalità di risparmio e di chiusura. Il pulsante lega semplicemente quei due pezzi separati di funzionalità insieme.

Se si sente il bisogno di violare SRP allora avete bisogno di rivalutare il vostro approccio. Qualsiasi violazione SRP può essere riscritta in un nuovo metodo o tipo che espone la funzionalità composito mediante composizione dei due pezzi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top