《Joomla! 3.0 扩展开发系列:搭建舞台》
我对于这个扩展开发系列的第一篇文章的必要性纠结了一段时间,最终决定这确实是一篇值得发布的文章。确保你打下坚实的基础非常重要,在编写 Joomla! 3.0 组件时,有几个方面应该从第一天开始就进行规划。这是关于扩展开发的一系列文章中的第一篇,如果不讨论规划与正确构建扩展的初始步骤,这篇文章将是不完整的。以下是我发现的最有效的开始一个成功的 Joomla! 扩展的步骤。
步骤 0:泡咖啡
(以下段落略带幽默,但事实上这是一个半重要的一步。)在开始任何工作之前,确保有一杯能让你保持警觉和专注的饮料。通过建立一个常规,让你的身体和大脑进入一种准备工作的模式。当你开始编写代码时,确保你不仅对即将编写的下一行代码保持警觉,而且始终对整体情况有清晰的思考。当你准备好你选择的饮料后,就是时候开始工作了。
步骤 1:从一块黄色的法律便笺和任何类型的笔开始
我们的大多数项目都是从一块黄色法律便笺开始的。你可能更喜欢其他颜色的纸张,这完全是你个人的选择。我推荐黄色,原因有很多,但这当然不是强制的。我也推荐使用钢笔而不是铅笔。铅笔容易涂鸦,想法会丢失,线条会模糊,这里的目的不是写一个完美的计划,而是进行头脑风暴,随意涂鸦,简单地把想法记录在纸上。最终结果通常不太美观。使用钢笔会鼓励你这样思考;否则,铅笔往往会鼓励擦除、重写以及其他头脑风暴的禁忌行为。
步骤 2:确定您的需求、目标市场和要解决的问题
好了,现在您应该坐在那里,手里拿着热饮和一张法律便笺和笔,准备开始下一步。开始写下您的想法。从您想要解决的问题开始,为什么您要编写这个扩展,您将重点关注哪些关键思想,以及您希望扩展做什么。在这个阶段,进行一些研究也很重要。这个组件已经存在吗?有没有人已经发布了可能被视为您产品竞争对手的类似产品?您要编写的组件的目标市场有多大?这一点需要考虑,并且有一些预防措施我想提醒您。
首先,不要试图编写一个“指环王”组件(一个组件统治一切,一个组件将它们束缚在一起...),确定您想要解决的核心问题,然后专注,专注,专注。这样,您的生活会轻松得多,您的市场营销也会更加顺利。其次,确保您的目标市场存在。不要假设因为您需要的组件,其他人也需要它。保持现实的期望,这样在您进展的过程中会更有信心。
步骤 3:编写您的应用程序/扩展的整体流程
一旦您草拟了您的想法、目标市场和您想要解决的问题,下一步就是编写组件的整体流程。很可能是同时进行这一步骤,甚至在您编写想法的同时,您会发现自己在开始这一概述过程。写出您需要的控制器、模型和视图。这可能是在讨论Joomla! 3.0组件开发的第一个重要部分——模型-视图-控制器(MVC)架构和Joomla!的时候。
Joomla!实现了相当标准的MVC结构,然而它与其他平台使用的MVC框架略有不同。Joomla! 3.0将每个任务视为一个控制器。这意味着您可能会有名为“保存”、“添加”、“编辑”、“删除”等名称的控制器。每个控制器只执行一个任务。起初,这可能会感觉您有很多文件,但最终这为组件提供了一个直观的流程,并有助于允许将多个命令链接在一起(我将在本系列后面的控制器文件编写部分详细讨论这一点)。
Joomla!中的模型处理实际的数据操作。这是您想要放置所有逻辑和代码的地方。模型通常创建来表示组件的关键单元或对象(例如类别、项目等)。在模型中,您有与特定对象相关的多个函数(例如列表、获取、保存等)。
最后,您有视图文件。Joomla!采用了一种标准方法来构建这些视图,我们将在本系列后面的部分更详细地讨论。在此阶段,可以说,视图通常与模型有相似的结构,与每个关键单元或对象相关的多个视图。
这应该提供了一个简短(尽管可能有些简单)的Joomla! MVC结构概述,并可能足以让您了解您应该如何编写整体组件流程并开始下一步。
步骤 4:组织数据结构和表架构
虽然实现扩展开发的第一步有许多方法,但我们发现接下来这一步最为合理和直观。一旦我们将所有上述信息记录下来,并确定了组件的关键部分和整体流程,我们就采取下一步,整理我们的数据结构和表模式。
在这一步中,我们开始将之前确定的每个模型(或关键区域)分解出来,并记录我们预计在该模型或表中使用的每个字段。对于大多数组件,您需要为每个模型创建一个与之关联的表来存储对应的数据。在编写Joomla!组件时,有一些字段被认为是标准的表字段,我们将在编写更多代码时详细说明。当我们编写表结构时,我们尽量遵循一些标准约定。例如,如果我们计划将一个项目与特定类别关联,我们将在项目表中包含一个category_id,同样,如果预计项目将与用户关联,我们也将包含一个user_id。这有助于我们稍后开始将手写的表格输入到我们的SQL构建器中。有时我们甚至在表格之间画线,以帮助可视化它们之间的联系。
第5步:设置版本跟踪方法(GitHub)
这一步不一定要紧接着做,但我们通常发现这是开始设置版本跟踪的好时机。我们更喜欢GitHub,原因很多。如果您不熟悉GitHub,您可以选择公共(免费)和私人存储库(非常低的月费),然后跟踪所有代码更改,并备份所有辛苦工作。而且它还允许多个用户编写代码,而不用担心覆盖彼此。如果您选择不使用GitHub,当然这并不是唯一的选择,但您找到某种方法来备份、跟踪和安全存储您的代码是至关重要的。
第6步:配置您的本地环境
本文最初的最后一步是配置您的本地环境。我会很快说,这里有很多选项可用,而不是详细说明您可以使用哪些方法编写代码,我会说这是开发过程中的一个点,我们设置了我们的环境。我们将创建本地Joomla! 3安装,克隆GitHub存储库,并按需要创建符号链接。我个人使用Sublime Text 2来管理我的代码,我发现Git工具集成对我的大多数代码编写来说都是令人满意的。您可以使用许多软件应用程序,而不是贬低它们,我会鼓励您找到最适合您的工作流程和代码编写风格的那个。
下个月开始:开始开发
在Joomla社区杂志上发表的一些文章代表了作者对特定主题的个人观点或经验,可能与Joomla项目官方立场不一致
通过接受,您将访问https://magazine.joomla.net.cn/之外的第三方外部服务
评论