6分钟阅读时间 (1212字)

如何成为Joomla扩展开发者

May-develop-extensions

Joomla!的关键优势之一在于其通过Joomla扩展的可扩展性。如果你对网络开发充满热情并想为Joomla社区做出贡献,成为一名Joomla扩展开发者可以是一条有回报的职业道路。在本文中,我们将探讨成为Joomla扩展开发者所需的知识和技能,以及一些基本的注意事项,帮助你开始这段旅程。

学习基础知识

如今,没有对HTML和CSS的基本了解,你无法进行网络开发。所以尝试跟随一些入门指南了解它们的工作原理。此外,了解JavaScript将为你的扩展提供额外的用户体验。

Joomla是用PHP开发的,所以你将在扩展中大部分时间编写或使用PHP代码。你不需要成为PHP大师,但了解现代PHP的基本知识将帮助你开发更好的扩展。

像任何编程语言一样,在PHP中有多个推荐,或者说是设计模式。这些设计模式是针对重复性问题的一种解决方案,任何人在某个时候都可能遇到。如果你在编写Joomla扩展时需要了解的一个简单设计模式,那就是模型-视图-控制器(MVC)设计模式。这个模式在Joomla中非常广泛,它影响着整个系统的哲学和可用性。

编写代码

学习Joomla扩展开发的最佳方式是构建实际的扩展。从简单的项目开始,逐步过渡到更复杂的项目。

开始构建一个Joomla插件。这是你可能在Joomla中编写的最简单的扩展,也可能是非常强大的。在你编写了第一个简单的插件之后,你可以继续改进其代码结构,使用现在每个Joomla扩展都包含的新容器注入模式。

编写解决方案,而不是代码

好的,这看起来是违背了之前的建议,但你知道那些评分最高的Joomla扩展有什么共同点吗?它们最初是针对开发者在面对问题时提出的解决方案。这些开发者需要解决与客户的问题,他们发现使用扩展来做这件事更容易。然后他们最终决定发布代码。

你可能认为经过18年的Joomla,所有问题都解决了,但事实远非如此。只需检查Joomla论坛、Joomla Subreddits或Joomla Stack Exchange,你就会看到很多人需要解决的问题。

花一分钟时间帮助这些用户将带来2个好处

  1. 你会学到很多关于Joomla内部机制以及一些第三方扩展是如何工作的
  2. 你会练习编写简单的代码片段来解决这些用户面临的问题。

最终,你将识别出可以用扩展解决的问题,你将准备好创建你的第一个扩展。

偷代码

我一直在自相矛盾...但你应该相信这句箴言

"好的程序员编写代码,最好的程序员窃取它"

这并不意味着从你的扩展中的任何地方复制粘贴代码,而是从其他开发者那里获得灵感。

Joomla扩展目录(JED)提供了一个庞大的现有扩展集合,你可以研究并分析它们,以了解它们的结构和功能。

检查它们的代码,分析为什么它们使用array_map而不是foreach结构,并试图了解它们的思路。这将帮助你从最好的人那里学习设计实践。

保持最新

Joomla是一个不断发展的平台,跟上最新的发展至关重要。关注Joomla的官方网站、开发者论坛和相关的博客,以了解新功能、更新和安全指南。

定期更新你的知识,以确保你的扩展与最新的Joomla版本保持兼容。

设置开发环境(并感到舒适)

首先,你应该选择一个你感到舒适的代码编辑器。一个非常受欢迎的选择是微软的Code。它可以通过插件扩展,我们甚至有一个Mattermost社区频道来分享关于它的技巧。此外,Joomla核心开发者非常喜欢PHPStorm,我必须承认我是那些疯狂使用Vim进行编码的人之一...无论如何,使用让你感觉良好的任何东西。

一旦你选择了你的编辑器,你需要设置一个测试环境。你可以选择在自己的电脑上安装自己的Web服务器,设置远程服务器,或者使用Docker来拥有你的环境。无论如何,不要对与CI和自动化测试集成的一体化Docker化环境的光芒感到惊讶。这是一个复杂的设置,你可能不会感到舒适。

我发现launch.joomla.org的服务作为起点非常方便。你不必担心设置或维护服务,你还有Web服务器的基本功能。

就我个人而言,我最初在我的本地机器上使用Apache、MySQL和PHP的本地安装进行开发。起初这很好,但随着PHP开始进化,我需要测试多个PHP版本,一切变得复杂起来。现在,我主要使用远程服务器进行测试,有时我在电脑上使用Docker进行本地测试。

发布你的代码

最后,一旦你找到了你认为可能对他人有帮助的东西,就让它公开。无论你是否拥有一个网站来分发它。如今,你可以使用GitHub来存储和发布你的版本,如果你想对扩展收费,可以使用FastSpring或GumRoad等服务来收取费用。

但你需要发布它。莱昂纳多·达·芬奇(意大利的 genius)说过

[...]停滞的水会失去它的纯洁性;同样,你的代码如果不发布也会生锈。

所以,让它向世界展示吗?

关于你的代码的快速提示

  • 遵循Joomla编码标准和最佳实践,以确保你的扩展的质量和可维护性。
  • 编写干净、模块化的代码,使你的扩展更加灵活,更容易维护。
  • 使用xdebug来了解更多关于Joomla的信息,并查看你的代码如何与系统集成。
  • 根据用户反馈和不断变化的需求,持续更新和改进你的扩展。
  • 不要忽视安全实践。Joomla有内置的安全功能,但遵循安全的编码实践对于保护你的扩展不受漏洞的影响非常重要。
  • 未经适当许可或归属,不要复制或修改现有扩展。尊重知识产权和许可条款。
  • 不要忽视文档。记录你的代码,并为你扩展的安装、配置和使用提供清晰的说明。文档良好的扩展更有可能被用户采用。

结论

成为Joomla扩展开发者是任何热爱网络开发的人的激动人心且有益的旅程。通过在Web技术方面打下坚实基础,掌握Joomla框架,获得实践经验,跟上最新发展,并与Joomla社区互动,你可以开启一个充满可能性的世界。

请记住要遵守编码标准,优先考虑安全性,并为Joomla生态系统做出积极贡献。拥抱持续学习和改进,以创建高质量扩展,为Joomla社区增值。祝您编码愉快!

现在是五月,作为Joomla扩展开发者,这是一个盛开的好时节?。

Joomla社区杂志上发布的一些文章代表了作者在特定主题上的个人观点或经验,可能不与Joomla项目的官方立场一致

1
模板覆盖 - 回收和重用
我是如何学习Joomla的 - Alison Meeks
 

评论

已经注册?请在此登录
尚未发表评论。成为第一个发表评论的人

通过接受,您将访问由 https://magazine.joomla.net.cn/ 外部的第三方提供的服务的链接