簡體   English   中英

什么是RPackageTag? 它們與Monticello軟件包有什么關系?

[英]What are RPackageTags? How are they related to Monticello Packages?

我嘗試了解RPackageTag

  1. 似乎RPackageTag就像子包一樣
  2. 與OS X中的標簽不同,一個項目(這里是一個類)不能具有多個標簽?
  3. 標簽總是特定於RPackage嗎? 包1-Tag1中包2-Tag1中的標簽是不一樣的,即是兩個不同的實例RPackageTag
  4. 有可能Package1-Tag1只是一個RPackage ,還有可能Package1-Tag1RPackage Package1RPackageTag Tag1的組合?

那正確嗎? 引入RPackageTag背后的想法是什么?

RPackageTag與Monticello軟件包有什么關系?

一些答案:

  1. 是的,它們就像子包一樣
  2. 現在,是的。 這是因為我們需要保持RPackage和“系統類別”之間的兼容性,並且我們暫時決定該方案為:RPackage + Tag = SystemCategory。 將來,通過刪除系統類別並允許標簽像OSX標簽一樣,這種情況將會改變。
  3. 現在,是的...請參閱要點(2):)
  4. 你不能。 這是因為組織問題也源於將RPackage + Tag附加到SystemCategory:如果您有一個程序包AB和一個帶有標簽B的程序包A,則它們都將共享SystemCategory AB ...這對於組織系統非常不利。系統。

當然,正如您所看到的,這里的真正問題是要在系統中保留古老的組織方式。 這將在Pharo4或(很可能在Pharo5中)發生變化,並且現在我們需要使用此便捷解決方案。

在Pharo 3中采用了環形封裝結構。大約被稱為MC封裝的RPachage消失了,純閑話類別消失了,並由RPackageTag代替。 您可以考慮將其作為在MC軟件包中創建分類類的一種方法。 我不知道Pharo董事會將來會做出什么決定,但是目前您每個班級只能擁有1個標簽。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM