关于扩展开发者是否应该将他们的扩展升级到 Joomla 1.6 的问题,有一些争论和困惑(以及一些错误信息)。简短的答案是"是的,除非你的扩展现在被新功能标记为过时。"
随着 Joomla 1.6 的发布,产品领导团队开始采用基于时间的发布周期。在过去,功能会在开发主干中开发,完成后,发布版本会被宣布为“就绪”。所以,除非所有计划的功能都已设置并稳定,否则不会发布新版本的 Joomla。这就是为什么 Joomla 1.5 和 Joomla 1.6 每个都花了三年时间来完成。这导致第三方开发者需要长时间等待来更新他们的扩展以适应三年的核心更改。这对于即使是小型扩展来说也是一个艰巨的任务。
基于时间的发布周期对 Joomla 来说是一个全新的方法。其工作方式是,提前六个月为下一个版本设定一个愿景/主题。对于 2011 年 7 月的发布,主题是"重新发现内容"。
这个愿景是产品领导团队概述的此版本的优先事项,它来自于社区在 Joomla 想法池(或 Joomla 功能跟踪器)中的想法,以及开发团队确定的与愿景一致的内容。这并不意味着所有列出的目标都会进入下一个版本,或者除了这些目标之外不会包括任何内容,但它为团队和希望贡献的社区成员提供了一个专注的路径。
一旦新版本发布,会有一个维护和修复漏洞的时期。然后团队进入下一个开发阶段,开始研发下一个版本。在这个阶段,会开发新特性,并将稳定的分支合并到代码主干。任何需要工作代码分支的人都可以提出请求,并且他们负责确保他们正在工作的内容与最新的稳定代码主干兼容。这提高了其被合并到核心的可能性,意味着开发者可以全年自由地工作,而不受发布时间的影响。一旦准备好,它可以进入主干,这样可以避免在发布前(而不是“稳定狂潮”)出现的“编码狂潮”。然后在发布日期前6周左右,进入代码稳定阶段,直到最终日期。
所有这些都确保了主干始终稳定,理论上发布可以在任何一天进行。所以每六个月,就会有Joomla的发布。那个发布的内容(显然会因版本而异)将决定编号结构。所以我们不得不按日期而不是编号来称呼未来的发布(因此,这并不意味着Joomla 1.7会在2011年7月发布,或者永远不会)。
Joomla从1.5到1.6的变化非常巨大(在我谦卑的意见中,它应该真正被称为Joomla 2.0),主要是因为ACL的更改和新内容结构——这是三年来的制作。但是,由于发布周期较短,未来版本所需的扩展程序更改应该要小得多。这意味着这是扩展开发者最后一次需要“咬紧牙关”以更新他们的扩展程序的时间。
这也意味着扩展开发者需要转向更渐进的开发过程——进行更小的更新和增量开发工作,而不是在新版本发布时每隔几年投入大量的时间。过去,让一个扩展程序与Joomla的两个不同版本兼容是很困难的。由于周期较短,新的模型下,一个扩展程序可能兼容五到六个版本。扩展开发者能够更好地规划他们自己的开发工作和成本(基于订阅的销售可能会在这种模型下增加,因为用户不会采取只在有新版本时购买的策略,而是会保持持续订阅)。其中一些也适用于网站构建者和管理员。版本之间的增量变化将使这些人在版本升级过程中生活更加轻松(无论是不是长期版本)。
所以,如果你是Joomla的扩展开发者,实际上升级到Joomla 1.6是具有实际和商业意义的,因为大约相同的工作量将用于升级到2011年7月的Joomla版本。升级到7月发布版的工作可能是微不足道的,你将是第一批处于前沿的扩展之一,你的客户肯定会更满意。