Solitamente un’applicazione è costituita da un singolo e monolitico file binario. Una volta che il compilatore ha generato l’applicazione, questa non cambia fino a quando non viene ricompilata e pubblicata la versione successiva. Eventuali cambiamenti nei sistemi operativi, nel tipo di hardware e nelle necessità del cliente devono attendere la ricompilazione dell’intera applicazione. Con l’attuale ritmo di cambiamento nell’industria del software, le applicazioni non possono permettersi il lusso di rimanere statiche dopo la loro pubblicazione. Gli sviluppatori devono trovare il modo di dare nuova vita alle applicazioni che hanno già prodotto. La soluzione è quella di suddividere l’applicazione monolitica in pezzi separati, in altre parole componenti. Con l’avanzamento della tecnologia, nuovi componenti possono rimpiazzare quelli esistenti che formano l’applicazione. Questa non è più un’entità statica, destinata a diventare obsoleta ancora prima di essere pubblicata. Al contrario, l’applicazione si evolve con grazia nel tempo, man mano che i nuovi componenti vanno a sostituire i più vecchi. Possono essere rapidamente costruite applicazioni totalmente nuove da componenti già esistenti. Tradizionalmente, ogni applicazione viene suddivisa in file, moduli o classi, che sono compilati e linkati in modo da formare l’applicazione monolitica. Costruire applicazioni con componenti, cioè il processo conosciuto come l'architettura basata su componenti è tutt’altra cosa. Un componente è come una mini applicazion e: viene fornito come pacchetto di codice binario compilato, linkato e pronto per l’uso. Continua »