Nella presentazione di Bloch, ha detto che il progettista dovrebbe cercare il rapporto buono per il peso per l'API. Inoltre, ha anche sottolineato che 'peso concettuale più importante di massa'. Immagino che il peso sia per 'Peso concettuale', alla rinfusa è per il numero di metodi di una classe.Che cos'è il "rapporto peso/potenza" di un'API?
Ma non riuscivo a capire che cosa ‘peso concettuale’ è, che cosa ‘rapporto potenza-peso’ è. Benvenuto a qualsiasi spiegazione!
Bloch ha fornito un esempio: List.subList()
ha un buon "rapporto peso/potenza". Se i clienti vogliono conoscere un indice di un elenco secondario, non ha bisogno di chiamare un metodo basso 'p2w ratio' indexOfSubList(a,b,e)
, invece, potrebbe chiamare List.subList(a,b).indexOf(e)
. Bloch pensava che questo fosse il "rapporto peso/potenza".
Origine:
API dovrebbe essere il più piccolo possibile, ma non più piccola
- API dovrebbe soddisfare le sue esigenze
- In caso di dubbio lasciarlo fuori
- Funzionalità, classi , metodi, parametri, ecc.
- Puoi sempre aggiungere, ma non si può mai togliere
- peso concettuale più importante della massa
- cercare un buon rapporto potenza-peso
Inoltre, il peso potrebbe significare lo sforzo richiesto per * caricare * l'API. Non avrei bisogno di caricare un mostro da 1000 KB per un effetto di rollover dell'immagine. – Piskvor
@Piskvor: Sarebbe la "massa", direi. –
@Michael Borgwardt: Ah davvero. Silly me. – Piskvor