Corso Object Oriented Analysis and Design (cod. ktooad)

Obiettivi A chi è rivolto Prerequisiti Moduli
Letture Consigliate Programma Completo Wiki Sconti

Chiedi informazioni su questo corso  | Visualizza Scheda PDF

Durata del corso: 5 giorni

La modellazione Object Oriented è una disciplina al confine tra l’arte e la scienza.
Come arte non può prescindere da fattori quali l’inventiva, la bellezza e l’innovazione; come scienza non può ignorare i principi fondamentali sui quali si basa.

Può un codice essere “bello”
?

Qualunque programmatore risponderà positivamente alla domanda pur non potendo elencare le regole in base alle quali si raggiunge questo risultato.

L’OOAD è quindi la disciplina che consente di gestire questo mondo di confine, di padroneggiare i principi base e di allenare la mente ad un pensiero Object Oriented.

Attraverso l’applicazione dei principi base, si illustrerà il metodo analitico per mezzo del quale si studia un problema (sistema) per raggiungerne una rappresentazione ad oggetti che rispetti i due principali obiettivi di una architettura Object Oriented: Design per il riuso e Design per il cambiamento.

Durante il corso Object Oriented Analysis and Design, si approfondiranno concetti, come l’astrazione, per comprenderne gli effetti sui processi mentali.  

Obiettivi Top

Fornire ai programmatori la capacità di progettare sistemi Object Oriented ben strutturati e duraturi nel tempo.

Un buon progetto deve:

  • essere in grado di resistere ai cambiamenti, generati da un mutamento delle specifiche oppure da un cambio di contesto tecnologico (Design for change);
  • consentire  di riutilizzare parti del software in contesti diversi da quello per cui è stato pensato originariamente (Design for reuse).

 

A chi è rivolto Top

Il corso Object Oriented Analysis and Design si rivolge a tutti i ruoli coinvolti nella gestione del processo di sviluppo del software: analisti, designer e sviluppatori.

Prerequisiti Top

I partecipanti al corso Object Oriented Analysis and Design, devono possedere conoscenze sia dei fondamenti dell’informatica, sia di almeno un linguaggio di programmazione. E’ preferibile la conoscenza di un linguaggio Object Oriented.

Moduli Top

Il corso Object Oriented Analysis and Design è articolato in cinque moduli:

  1. Origini e concetti fondamentali della OOP
  2. Qualità del Software e Metodologie di Sviluppo
  3. Pensare ad Oggetti e Modellazione
  4. GRASP
  5. Altri principi della OOD

Vi presentiamo in anteprima un modulo del corso:

Letture Consigliate Top

Prima di partecipare al corso Object Oriented Analysis and Design è preferibile leggere uno dei seguenti libri:

  • The Object Oriented Thought Process (Matt Weisfeld) [libro cartaceo]
  • Object-Oriented Analysis and Design with Applications (Booch, Conellen) [libro cartaceo]
  • Applying Uml and Patterns - Craig Larman [libro cartaceo]

Dopo il corso si consiglia di leggere uno dei seguenti testi:

  • Design Patterns: Elements of Reusable Object-Oriented Software (Gamma,Helm) [libro cartaceo]
  • Refactoring Improving the Design of Existing Code (Fowler-Beck-Brant-Opdyke-Roberts) [libro cartaceo]

 

Programma Completo Top

1. Origini e concetti fondamentali della OOP

  • Problematiche
  • Obiettivi del Design
  • L’approccio
  • Miti del Software
  • Origini della OOP
  • Concetti OO fondamentali

2. Qualità del Software e Metodologie di Sviluppo

  • Metriche di Qualità del Software
  • Ciclo di vita del Software
  • Metodologie di Sviluppo
  • Modello a Cascata
  • Modello a Spirale
  • Procedimento Unificato
  • Extreme Programming

3. Pensare ad Oggetti e Modellazione

  • Definizione di Oggetto
  • Definizione di Oggetto in termini di Responsabilità
  • Classificazione delle Responsabilità
  • Modellazione ed Obiettivi
  • Cattivo Design vs Buon Design
  • Modellare il Sistema vs Modellare Base Dati

4. GRASP (General Responsability Assignment Software Patterns)

  • Creator
  • Controller
  • Expert
  • Low Coupling
  • High Coesion
  • Polymorphism
  • Indirection
  • Pure Fabrication
  • Protected Variations

5. Principi Object Oriented

  • Rasoio di Occam
  • Incapsulamento
  • Information Hiding
  • Open-Closed
  • Liskov (LLP)
  • Don't Talk to Strangers
  • Design by Contract
  • Inversion of Control
  • Command Query Separation Principle
  • Interface Segregation Principle
  • Separation of Concern
  • Least Surprise

 

Wiki a supporto Top

Dal primo giorno di corso, i partecipanti potranno accedere ad un wiki di supporto dove troveranno aggiornamenti sul corso, sulle relative integrazioni e documentazione di approfondimento. Sarà disponibile un sistema di segnalazione con il quale, tramite ticket, si potranno inserire suggerimenti e proposte di ampliamento al programma e al materiale del corso.

Sconti e Promozioni Top

I partecipanti che si iscriveranno al corso con almeno 30 giorni di anticipo sulla data di termine iscrizione, avranno uno sconto del 10% sul prezzo. Scopri tutti gli sconti.