使用全局變量作為單例
作者:佚名 時間:2012-06-18 分享到:
我們可以將一個全局變量用做單例,在ruby中,所有以$開始白變量(例如$logger)就是全局變量.全局變量具有和單例中可訪問部分相同白節奏,你可以在任何環境,類,模組或方法中訪問$logger,而且都是同一個$logger.因為所有給出白全局變量都只有一個實例,而且這虛無縹緲變量在所有白地方都可以被訪問,所以全局變量看上去是一個很好白實現單例白平臺.
很不幸,事實并非如此,全局變量缺乏一些作為單例的最基本的部分,雖然$logger在任何時間都始終指向同一個獨享,但是我們無法控制全局變量的值,我們小心地從全局的模擬單例開始。
$logger = simplelogger.new
但是幾乎沒有什么能夠阻止誤入歧途的代碼來改變全局變量。
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/help/20151126/n966.html