【问题标题】:phpDocumentor alternative consuming less memoryphpDocumentor 替代方案消耗更少的内存
【发布时间】:2011-02-13 19:45:11
【问题描述】:

好吧,我受够了phpDocumentator。它消耗的内存(1.4 GB)和时间(2.6GHz Core 2 Duo 上 5 分钟)比我愿意提供的要多得多。是否存在一些真正兼容的程序来为 PHP 代码生成文档?

我试过PHPDoctor,看起来不错,但有一些missing features。然而,它可能是迄今为止我尝试过的所有解决方案中最接近的替代品。

我也尝试过PhpDocGen,但它只是解决了一些 Perl 错误,我懒得研究。

Doxygen 似乎也不适合我们的资源。

PS:文档是phpMyAdmin,有点过时的文档是here

更新:代码包含很多函数,而不仅仅是对象,Doxygen 最大的问题是什么,因为它无法组织它们。

【问题讨论】:

  • 出于兴趣,您的特定项目的内存密集程度如何?
  • 它因 1 GB 限制而崩溃,但仍有大量文件要处理。
  • 嗯。我真的没有看到问题。这不像您一天 24 小时都在运行 PHPdocumentor。就像您说的那样 - 这是您构建过程的一部分,只需 5 分钟。

标签: php doxygen phpdoc


【解决方案1】:

我们从 phpDocumentor 切换到 Doxygen,因为前者不支持 PHP 5.3 功能,如命名空间和闭包。 phpDocumentor 的最后一次更新是在 2008 年。

主要的@-attributes 在 Doxygen 中是相同的,因为它们都使用 JavaDoc 样式的 cmets。它也非常可配置。

【讨论】:

  • 我发现 Doxygen 存在一些问题,但也许我无法正确配置它。它不处理文件级 cmets,并在命名空间文档中造成巨大的混乱。除非启用了EXTRACT_ALL,否则它不会为函数生成文档,并且除了浏览文件之外,它仍然没有提供一些简单的方法来浏览函数。它也不支持@uses 和@subpackage。
  • 我们不使用@subpackage(这是命名空间现在所做的)或@uses(没用,哈哈)。至于文件级 cmets:这确实是个问题,但我们遵循“每个文件一个类”的方法,所以我们只使用类 cmets。
  • 只有类可能会使事情变得更容易,但事实并非如此(目前)。
【解决方案2】:

您也可以尝试 DocBlox;它是一个新手(双关语),但已经支持 phpDocumentor 提供的许多功能和许多更新的东西(如命名空间)。 请在https://www.github.com/mvriel/Docblox尝试一下

【讨论】:

  • 它仍然专注于目标代码和类,对于主要包含函数的代码几乎没有用处。只需在 phpMyAdmin 上尝试一下。
  • 你心目中的组织是什么样的?显然,您希望文档生成工具以某种方式将这些功能分组到逻辑部分。对于类和文件,这是通过类、命名空间和 docblock 中的 @package 标记来完成的。函数通常仅在文件级别分组(您可以使用 @package 标记进行分组)
  • @Mike van Riel 我喜欢 Docblox。我将它与我为 PHPDocumentor 编写的 cmets 一起使用,没有任何更改,它很棒。有兴趣开发 HTML 界面吗?
【解决方案3】:

Doxygen 相当复杂,它应该支持 PHP 5.3 的特性。然而,它并没有完全按照我想要的方式工作,我意识到它是一个大程序,但不是为 PHP 设计的;所以我需要一些更轻、更简单并且最好是 PHP 独有的东西,因为让我们面对现实吧,PHP 并没有很常见的编程语言语法和外观。

我知道你提到了它,但我最终选择了 PHPDoctor。它确实缺少一些功能,但它简单快捷,正是我想要的。

让我们知道您选择了什么以及原因。

另外值得一提的是,我发现 PHPDoctor 界面非常简单且易于设置样式(几乎没有 CSS 更改)。我能够为我的文档创建一个非常干净的页面。

【讨论】:

    【解决方案4】:

    我一直在使用Natural Docs,很适合我

    【讨论】:

    • 这可能是一个不错的选择,但这意味着将所有文档转换为新格式,这是我想避免的工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-17
    • 2016-05-22
    • 1970-01-01
    相关资源
    最近更新 更多