代码之家  ›  专栏  ›  技术社区  ›  DV.

记录AJAX+PHP代码的最佳方法?[闭门]

  •  10
  • DV.  · 技术社区  · 18 年前

    我一直支持编写代码文档,但是当涉及到AJAX+PHP时,并不总是那么容易:代码实际上是分散的!逻辑、数据、表示——你可以说——在服务器端和客户端代码之间被分割和混合。有时也有数据库端代码(存储过程、视图等)在做部分工作。

    注意:这个问题适用于任何客户端+服务器端应用程序,而不仅仅是Javascript+PHP。

    4 回复  |  直到 18 年前
        1
  •  4
  •   ConroyP    18 年前

    我认为你的方法很好。唯一的问题是,js文件中的所有内容都可以被其他人读取,因此记录所使用的PHP文件可能会导致安全漏洞,他们很可能会找到返回不应该返回的文件。此外,虽然没什么大不了的,但在流量较高的网站上,下载500字节的评论就可以了。

    这两个都不大,但只是我以前的想法。

        2
  •  3
  •   clofresh    18 年前

    我认为最好采取分层方法。

    对于函数和类级别的api级文档,请在代码中编写内联文档,并使用许多文档工具生成html文档( JSDoc , phpDocumentor , OraDoclet 等)。如果您的文档工具可以与您的源代码管理工具集成,这样您就可以从api文档跳转到特定的代码行,那么您将获得额外的积分。

    一旦您准备好了文档工具,就开始为每个新构建生成文档,作为构建过程的一部分(您有一个构建过程,对吗?),并将文档推送到标准web位置。

    一旦这些api文档联机,您就可以为诸如browser->之类的高级文档创建wiki;网络->数据库交互、用户故事、模式图等。最好用简短的散文或要点编写高级文档,必要时链接到api文档和源代码管理。

        3
  •  1
  •   Ken    18 年前

    通过PHP为您的javascript(和css)提供服务-您可以将源文件保存在一起以便于交叉引用,并且通过小心使用标题,您可以轻松处理缓存。这样做还可以获得格式良好的注释重源版本,然后可以在发送到浏览器之前对其进行压缩或模糊处理。

    function OutputJs($Content) {
        ob_start();
        echo $Content;
        $expires = DAY_IN_S;
        header("Content-type: x-javascript");
        header('Content-Length: ' . ob_get_length());
        header('Cache-Control: max-age='.$expires.', must-revalidate');
        header('Pragma: public');
        header('Expires: '. gmdate('D, d M Y H:i:s', time()+$expires).'GMT');
        ob_end_flush(); 
    }
    
        4
  •  0
  •   Jason Moore    17 年前

    对于包含大量javascript的项目,我使用一个带有 javascript minimizer

    好处是jsmin还可以从CSS中删除注释,因此您也可以在那里自由地开始注释。(我发现使用css类对于编写清晰的javascript至关重要。)

    使用PHP动态剥离代码并组织javascript文件是一个有趣的想法。请记住,web应用程序的一个重要优化是 reduce HTTP requests

    推荐文章