Tehnici de proiectare software - Tipografia
Tehnici de proiectare software - Tipografia
Tehnici de proiectare software - Tipografia
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
• Variante ale şablonului<br />
Una dintre opŃiunile şablonului Singleton. <strong>de</strong> multe ori nebăgată în seama, este<br />
aceea <strong>de</strong> a avea mai mult <strong>de</strong> o instanŃă într-o clasă. Beneficiul este că restul aplicaŃiei<br />
poate rămâne la fel. în timp ce acelea care ştiu <strong>de</strong> aceste instanŃe multiple pot utiliza<br />
alte meto<strong>de</strong> pentru o obŃine alte instanŃe.<br />
Metoda <strong>de</strong> acces a singleton-ului poate fi punctul <strong>de</strong> intrare către un set <strong>de</strong><br />
instanŃe, toate <strong>de</strong> un subtip diferit. Metoda <strong>de</strong> acces poate <strong>de</strong>termina la rulare ce subtip<br />
specific <strong>de</strong> instanŃă să returneze. Acest lucru poate părea ciudat, dar este foarte<br />
folositor atunci când se utilizează clase dinamice. Sistemul care foloseşte singleton-ul<br />
rămâne neschimbat, în timp ce implementarea specifică a singleton-ului poate fi<br />
diferită.<br />
• Şabloane asociate<br />
Printre şabloanele asociate Singleton-ului se număra:<br />
- Abstract Factory<br />
- Buil<strong>de</strong>r<br />
- Prototype<br />
• Exemplu<br />
unica:<br />
Şablonul Singleton se poate utiliza pentru crearea unei conexiuni la distanŃă<br />
final class KemoteConnection {<br />
private Connect con;<br />
privare static RemoteConnecticn re = nev;<br />
RemoteConnection(connection) ; private<br />
RemoteConnection(Connect c) { con = c;<br />
public static RemoteConnection getRemoteConnection ( ) {<br />
return re; } public void<br />
setConnection(Connect c) f<br />
this(c);<br />
\<br />
19