如何类的类别和包装物的企业在不同的版本菲罗的工作?(How does the organisatio

2019-07-30 02:06发布

有人可以解释的班菲罗组织不同版本菲罗是如何运作的?

  • 所有类是Smalltalk中的一部分,全球(一直都有,似乎留下这样的吗?)
  • 类可以有一个类别,但多数民众赞成只是一种标签的? (一直以来,似乎停留这样的吗? 不过,这些类别以某种方式映射到包有时 ?)
  • 有各种不同的软件包的菲罗的不同版本
    • 代表蒙蒂塞洛包MCPackages
    • PackageInfo
    • RPackage(菲罗1.4)?

此外,还有SystemNavigation这在某种程度上有助于基于某些上述结构的导航类和方法?

Answer 1:

那类在关键的事实Smalltalk全球是一个实现细节。 只要有类名称的单一全局命名空间,它是可能的实施将保持不变。

类类别

类类非常喜欢的标签。 一个类只能在一次一个类别。 最初使用的类属由Browser在系统中组织类。

Monticello创建的类属超载也表明在蒙蒂塞洛包的会员MCPackagePackageInfo类创建管理这个映射。

PackageInfo做所有繁重:找到属于一个包中的类和方法松动。

MCPackage为Monticello的特定包装PackageInfo ,增加了一些协议,它并不一定适合于更普遍的PackageInfo

重载类类别包的会员是一个巧妙的方法来缓解采用的Monticello (现有的开发工具并不需要被教导Monticello ),但是,它仍然是一个把戏 。 更何况事实,即实施PackageInfo是不是很有效。

RPackage成立是为了解决性能问题PackageInfo和用作下一代开发工具的一部分。

这两个包的实现将继续存在,直到PackageInfo可以被淘汰。

SystemNavigation

弗兰克说,

SystemNavigation是一类,顾名思义,允许许多不同的东西容易查询:图像中的类,发件人-的,实现者 - 的,软件包信息加载的图像等。



Answer 2:

类是,至少在此刻,在按键Smalltalk字典。

PackageInfo包含的类和扩展到其他软件包的分组信息。

甲蒙蒂塞洛包中包含的代码的可部署单元。 通常这些人会对应一个PackageInfo实例。 (击中在蒙蒂塞洛浏览器中的“+包”按钮将创建的其中之一,例如)。一个蒙蒂塞洛包可以包含预负荷和负荷后脚本,所以这两个类执行单独的,如果相关的,功能。

SystemNavigation是一类,顾名思义,允许许多不同的东西容易查询:图像中的类,发件人-的,实现者-的,软件包信息加载的图像等。



文章来源: How does the organisation of classes in categories and packages work in different versions of Pharo?