Keamanan dengan karakter, atau beberapa kata lagi tentang pola Singleton

- Bagaimana, dan dia juga seorang lajang? Dan saya pikir dia normal!





- Berapa kali saya dapat memberi tahu Anda bahwa kata tunggal, mediator, dekorator, dan bahkan prototipe tidak ada hubungannya dengan orientasi kode?





(percakapan memanggil perokok dan memanggil programmer biasa)





Halo semuanya, saya Maxim Kravets , CEO tim teknik web Holyweb, ahli JavaScript. Dan hari ini saya ingin berbicara tentang pola desain.





Mari kita lihat sebagian kecil kode:





@Injectable()
export class SomeClass implements SomeInterface {
  private currentData: Data
 
 setData() {
      this.currentData = new Data()
}
      
      



, : ยซ decorator SomeClass Dependency Injection, setData Builder new currentData ...ยป





. , , . , , . โ€” . โ€” , . .





โ€” . , โ€” . , ยซ ยป. , โ€” , . ( Singleton).





. . ,

Singleton โ€” - , . : 









,





, :





public static getInstance(): SingletonClassName { 
    !instance ? instance = new SingletonClassName : instance
}
      
      



, ? ! , ! , โ€ฆ





(), ( ) , ( , ). โ€” 100 ().  





( ) 100 . , , 100 . , โ€ฆ





, )) , . , () ? ? .





( ) . , - โ€” . ? โ€” ! , (). (), ( ...), (... ).





, , . , . 





. .

Singleton โ€” (), , () , . 





//   
class DataBase {
//       Singleton-
private static instance

//   ,     
//       new
private constructor() {
  //       
  โ€ฆ.
  // ,    
  this.instance = null
}
//     
//  ,       Singleton-
public static getInstance() {
if ( this.instance === null ) {
//   ,  
 this.instance = new DataBase()
}

//   ,  
return this.instance
}
//     query  
//    
public getQuery(payload) {
	//    
	...
}
}

//   
class AppModule {
	//    
	Data() {		
		//   
		let foo = DataBase.getInstance()
		let bar = DataBase.getInstance()

		// foo    ,
		//   bar
		foo.getQuery("SELECT ...")
		bar.getQuery("SELECT ...")
}
}
      
      



, Singleton , , , Singleton , .





Singleton โ€” TypeScript, , .





, Singleton , ยซ ยป โ€” , . , , , .





Singleton, , , , TTD.





? , ! , , . , (DI), ( Singleton) , .





. . , ?

. Singleton โ€” , . . , , , . Singleton. , :













.





.





.





.





.





.





, Singleton ยซยป . , Singleton. Singleton.





, , . , , : Telegram @maximkravec





Apakah ada yang perlu ditambahkan? Tinggalkan komentar Anda! Kami akan menambahkan yang paling menarik ke artikel agar lebih baik.








All Articles