如何理解和分析网站源代码



我必须进行维护,并向客户端网站添加一些代码(jsp、js等中的数百个源文件),但首先我有两周的时间来了解它的工作原理。源代码不包含注释,但它是有组织的。但是,有很多文件需要处理。

总的来说,我曾与一些媒体网站合作,我理解源代码的方法是:

  1. 理解界面(vue)
  2. 从主页开始分析源代码并获取评论

但这个网站真的很庞大,我想知道是否有更好的方法或技术来理解它,或者是否有软件可以帮助(报告?),或者在线教程。

我正在寻找任何可以帮助我提高工作效率和快速分析源代码的信息。

您可以使用web开发工具,如firebug、F12开发工具等来检查、编辑和监控CSS、HTML、JavaScript等。

给自己买一个IDE,Dreamweaver需要花钱,但像aptana这样的其他IDE是免费的。它们将允许您查看文件夹结构,并使代码更具可读性。不要认为还有其他方法,只需要继续浏览网站,看看以前的开发人员是如何做事情的,希望他们有某种标准的方式来做事情

你很幸运,有一本书你可以买!

根据我的经验,一旦你进入大型项目,你需要得到一些帮助。。。

首先,安装声纳,并配置它来检查项目。它提供了对代码库的高级概述,并强调了看起来有风险的领域——在接管代码库时,重要的是要知道你是在看一个设计良好的应用程序,还是在看一堆獾粪便。尽管静态分析是一种非常生硬的工具,在许多情况下可能是错误的,但这是一个非常好的开始。如果你看到"遵守规则"的比例低于75%,那就去爬山吧。

我会花相当多的时间浏览Sonar分析,并可能根据您的发现使用插件添加一些额外的报告。

接下来,我将确保我从内到外了解构建和部署过程。大多数时候,你可以计算出代码的作用,即使它有点疯狂——但部署通常是伏都教的,有许多令人兴奋的失败模式。获得一个测试环境,并确保您可以从头开始编译和部署应用程序——这确实是理解移动部件的最佳方式。

当你这样做的时候,建立自己的修订控制系统、持续集成环境等是有意义的。

最后,你能找到的任何类型的测试信息都是一个巨大的帮助——无论是自动化的(Junit、Selenium等),还是测试脚本的形式。毕竟,如果你不知道会发生什么,你怎么知道应用程序是否按预期工作呢?如果您没有任何测试,我强烈建议您从编写自己的单元测试开始。这是一种掌握他人代码的好方法——如果你因为某种原因无法编写单元测试,这通常是寻找新工作的另一个迹象。

你应该记住,你不需要知道每一段代码是如何工作的,你只需要知道你需要知道的——可以这么说。

我想说的是,例如,如果你的客户要求你在他的网站上添加公告板,你不需要花几天时间来挖掘他的JavaScript文件来"弄清楚它们的作用"。你只需要足够了解他的环境,就可以知道如何设置公告板,然后继续前进。

同样,如果他希望你创建一个Contact Us表单,并且他的页面是用PHP完成的,你不需要知道今天每一段PHP代码是如何在网站上运行的,你只需要知道如何用PHP创建一个邮件表单并将其包含在网站中。

作为一个更高级的注意事项,如果你要对这个网站进行维护,我强烈建议将文件置于修订控制之下。基本上,这些系统可以帮助您管理对代码所做的更改。几天、几周、几个月或(希望对你来说)几年后,发生了很多变化,很高兴能够看到你是如何以及为什么改变事情的。

就软件而言,这完全是一个偏好问题,但我使用NetBeans IDE作为我的IDE,使用TortoiseHg进行修订控制。

最新更新