JDK-630
Corso Design Patterns with Java
INFORMAZIONI
Nell'ingegneria del software, un design pattern (struttura di progettazione) può essere definito "una soluzione progettuale generale a un problema ricorrente". Esso non è una libreria o un componente di software riusabile, quanto una descrizione o un modello da applicare per risolvere un problema che può presentarsi in diverse situazioni durante la progettazione e lo sviluppo del software. La differenza tra un algoritmo e un design pattern è che il primo risolve problemi computazionali, mentre il secondo è legato agli aspetti progettuali del software.
ABSTRACT DEL CORSO
Il corso JDK_630 si pone come obiettivo l'utilizzo dei design pattern come best practise e natural approach alla programmazione orientata agli oggetti
A CHI E' RIVOLTO
Le persone che possono beneficiare di questo corso sono coloro che hanno un background professionale object oriented, ma che non hanno la piena consapevolezza delle best practise della programmazione ad oggetti
Ciò include sviluppatori web, direttori tecnici.
PREREQUISITI
Per riuscire pienamente in questo corso dovresti saper:
- Utilizzare almeno un linguaggio di programmazione Web
- Riconoscere le problematiche principali del web
COMPETENZE ACQUISITE
Al completamento di questo corso dovresti essere in grado di:
- Programmare in modo organico, secondo i dettami del pattern architetturale MVC
- Utilizzare il framework Struts in ogni suo aspetto
Clicca qui per vedere JDK_630- CORSO DESIGN PATTERNS
Modulo 1:
- Richiami sul paradigma ad oggetti
- I fondamenti della OOP
- Incapsulamento
- Ereditarieta
- Polimorfismo
- Java come linguaggio OOP
- Cosa sono i design patterns
- Perché i design patterns
- Struttura di un pattern
- Classificazione dei design patterns
Modulo 2:
- Patterns creazionali
- L'Abstract factory
- Il Factory
- Il Builder
- La Lazy initialization
- Il Prototype
- Il Singleton
Modulo 3:
- Patterns strutturali
- L'Adapter
- Il Bridge
- Il Composite
- Il Decorator
- Il Façade
- Il Flyweight
- IL Proxy
Modulo 4:
- Patterns comportamentali
- la Chain of Responsibility
- Il Command
- L'Iterator
- Il Mediator
- Il memento
- L'Observer
- Lo State
- Lo Strategy
- Il Template
- Il Visitor
Modulo 5:
- Pattern ed Anti-Pattern
- Perché gli Anti-Pattern
- Gli Anti-Pattern più conosciuti...
- Azione a distanza - action at a distance
- Ancora da nave - boat anchor
- Attesa a vuoto - busy spin
- Mancato caching - caching failure
- Inerzia del codice - code momentum
- Carica e spara - accumulate and fire
- Codice procedurale - procedural code
- Codice puzzolente - code smell
- Colata di lava - lava flow
- Coltellino svizzero - Swiss Army Knife (anche: Kitchen Sink)
- Complessità involontaria - accidental complexity
- Controllo di tipo invece che di appartenenza - checking type instead of membership
- Corpi tiepidi - warm bodies
- Design by committee
- Inferno delle DLL - DLL hell
- Interblocco ricontrollato - double-checked locking
- Enorme palla di fango - big ball of mud
- Anomalia della sottoclasse vuota - empty subclass failure
- Fede cieca - blind faith
- Sbagliato di uno - fencepost error
- Fumo e specchi - smoke and mirrors
- Gestione a fungo- mushroom management
- Input ad-hoc - input kluge
- Interfaccia che ingrassa - interface bloat
- In mano al fornitore - vendor lock-in
- Invecchiamento rapido - continuous obsolescence
- Inversione di astrazione - abstraction inversion
- numero magico - magic number
- Oggetto Dio - God object
- Ottimizzazione prematura - premature optimization
- Paralisi da analisi - analysis paralysis
- Poltergeist - poltergeist
- Priorità alle estensioni - creeping featurism
- Problema dello yo-yo - yo-yo problem
- Programmazione copia e incolla - copy and paste programming
- Pulsante magico - magic pushbutton
- Punto di vista ambiguo - ambiguous viewpoint
- Reinventare la ruota - reinventing the wheel
- Reinventare la ruota quadrata - Reinventing the Square Wheel
- Software che ingrassa - software bloat
- Spaghetti code - spaghetti code
- Pila di piatti - stovepipe system
- Valori cablati- hard code
- Vicolo cieco - Dead End
Clicca qui per chiudere
Clicca qui per chiudere