GRASP (modelli software per l’assegnazione delle responsabilità generali)

GRASP (General Responsibility Assignment Software Patterns) è un file design pattern nello sviluppo di software orientato agli oggetti utilizzato per assegnare responsabilità a diversi moduli di codice.

Come strumento per gli sviluppatori di software, GRASP fornisce un mezzo per risolvere i problemi organizzativi e offre un modo comune per parlare di concetti astratti. Il modello di progettazione definisce le responsabilità per oggetti e classi in orientata agli oggetti progettazione del programma.

GRASP con la programmazione orientata agli oggetti classifica i problemi e le loro soluzioni insieme come modelli. Con questi problemi e soluzioni ben definiti, possono essere applicati in altri casi simili. GRASP assegna sette tipi di ruoli alle classi e agli oggetti in modo da definire chiaramente le responsabilità. Questi ruoli sono:

  • Controller
  • Esperto di informazioni
  • Creatore
  • Alta coesione
  • Accoppiamento basso
  • Polimorfismo
  • Classi protette

GRASP è occasionalmente accoppiato con altri modelli di design come SOLID. Questa combinazione rende il moniker convincente di SOLID GRASP. Modelli di progettazione come questi aiutano a mantenere il codice più semplice, più organizzato, più comprensibile, analizzabile e riutilizzabile.