Differences

This shows you the differences between two versions of the page.

Link to this comparison view

poo:breviare:breviar-12 [2026/01/12 08:14]
george.tudor1906
poo:breviare:breviar-12 [2026/01/12 08:16] (current)
george.tudor1906 [2. Decorator]
Line 275: Line 275:
 === 2.3 Structura Decorator === === 2.3 Structura Decorator ===
  
-Mapând pe diagramă+{{:poo:​breviare:​img2.jpg?​600|}} 
-  * **FileOutputStream** joacă rolul de componentă concretă + 
-  * **PrintWriter****OutputStreamWriter** și **CipherOutputStream** joacă rolul de decoratoare concrete+**Participanți:​** 
 +  * **Component** - definește interfața pentru obiectele care pot avea responsabilități adăugate dinamic (metoda Operation()) 
 +  * **ConcreteComponent** - definește un obiect căruia i se pot adăuga responsabilități suplimentare 
 +  ​* **Decorator** - menține o referință către un obiect Component ​și definește o interfață conformă cu interfața lui Component (delegă apelul către component->​Operation()) 
 +  ​* **ConcreteDecoratorA** - adaugă stare suplimentară (addedState) componentei 
 +  * **ConcreteDecoratorB** - adaugă comportament suplimentar (AddedBehavior()) și apelează Decorator::​Operation()
  
 <note important>​ <note important>​
Line 283: Line 288:
 o componentă concretă, construcția nu va funcționa. o componentă concretă, construcția nu va funcționa.
 </​note>​ </​note>​
- 
-=== 2.4 Diagrama UML Generală === 
- 
-{{:​poo:​breviare:​img2.jpg?​600|}} 
  
poo/breviare/breviar-12.txt · Last modified: 2026/01/12 08:16 by george.tudor1906
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0