Unico principio di responsabilità:la granularità del motivo per cambiare

StackOverflow https://stackoverflow.com/questions/27018

  •  09-06-2019
  •  | 
  •  

Domanda

Quando si applica l'Unico Principio di Responsabilità e guardando una classe è motivo di cambiare, come si fa a determinare se che anche la ragione del cambiamento è troppo granulare, o non sufficientemente granulari?

È stato utile?

Soluzione

Non so che c'è una buona risposta a questo un altro di "applicare il vostro giudizio, in base alla vostra esperienza." In mancanza di questo, di farsi aiutare, che credo sia quello che stai facendo ;)

Seriamente, però, se si scopre che si sta creando una marea di classi per fare quello che sembra un lavoro semplice, allora siete probabilmente troppo granulare.Se le classi sembrano tutti collossal, allora probabilmente siete troppo grossa.Mi perdoni se che è una dichiarazione di ciò che è ovvio.

Penso che questo è uno di quei fuzzy, no-hard-e-veloce-regole di casi che ci mostrano perché abbiamo bisogno di programmatori.Basta provare qualcosa, in cerca di equilibrio, e il refactoring se si trova si sta andando troppo in una direzione o l'altra.E ricordate: se vale la pena di fare, vale la pena di fare male.

Altri suggerimenti

  1. Io non sarei troppo preoccupato di granularità inizialmente.Andrò solo con la separazione di preoccupazione a livello più ampio inizialmente.Il punto è che si dovrebbe evitare di ingegneria qui.Ma appena sufficiente.Sono d'accordo con Lucas qui, che questo primo passo sarà migliorare con l'esperienza.
  2. Come cambiano i requisiti, come sto iniziando a ottenere il 'odori', come la mia comprensione del problema migliora vorrei refactoring del design da escludere separato preoccupazioni diventano evidenti.Fondamentalmente la separazione di preoccupazione deve anche essere evolutivo come con il disegno complessivo.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top