all'interno del paradigma OO, abbiamo scelto di utilizzare le classi, perché ci aiutano a rompere il sistema verso il basso, e fornire vantaggi collaterali piacevoli come l'incapsulamento, la separazione delle responsabilità, l'ereditarietà, la modularità, eccTerminologia: qual è la differenza tra una classe e un componente?
Se guardiamo un sistema software a livello di componenti, possiamo semplicemente trattare i componenti nello stesso modo concettuale, cioè un componente è semplicemente una "Big Class"? O c'è ancora dell'altro?
Quali ulteriori considerazioni devono essere fornite durante la progettazione dei componenti?
EDIT:
So che una classe e un componente sono cose diverse. Capisco anche che un componente può contenere molte molte classi, ognuna delle quali ha i propri ruoli e responsabilità.
Vedrò se riesco a spiegarmi meglio.
- Le classi ci consentono di risolvere problemi più grandi perché ci consentono di pensare e progettare in modo più astratto.
- Esistono regole & tecniche per determinare come suddividere e assegnare dati e funzionalità alle classi.
Questa sembra una situazione molto simile a quella del design dei componenti, proprio a un livello più alto di astrazione. Le tecniche utilizzate per determinare quali classi sono necessarie scalare fino a componenti e/o ci sono altre cose che influiscono su un progetto di sistema di alto livello che non si applicano a livello di astrazione di classe?
controllare anche http://stackoverflow.com/questions/1027875/in-a-software-project-how-would-you-differentiate-a-component-from-a-module – dfa