2017-10-19 111 views
0

NSApplication.shared「返回應用程序實例,如果它尚不存在,則創建它。」爲什麼對當前應用程序的引用稱爲`shared`

爲什麼當前應用程序實例名爲'shared'?

[名稱類似的NSWorkspace.shared對我來說很有意義,因爲它是通過在當前NSWorkspace正在運行的應用共享工作空間]

+0

這是一個單身人士。你的問題是「如果它還不存在,就創建它」。 – Grimxn

+0

這不是一個編程問題,更多的是一個命名問題。 – JAL

+0

現在我已經閱讀了下面的Luca的回答,我對這個看似奇怪的名字選擇的好奇心已經飽和了。作爲一名開發人員,他並不熟悉Apple使用'shared'來指稱使用單例模式的實例化,所以這個名字沒有任何意義。男人,人們很快就會在這個網站上倒下東西! –

回答

1

在可可在Singleton圖案中使用名爲sharedInstance一個靜態屬性過去引用給定單例類的唯一實例。

需要Singleton類實例的每段代碼(如NSApplication)都可以使用sharedInstance屬性獲取它。

因此,該實例實際上是在應用程序的不同部分之間共享的。

2016年爲MacOS,iOS的,tvOS和watchOS的API的命名約定已實現了現代化和sharedInstance已經根本shared改名。

相關問題