我熟悉使用cyclomatic复杂度来衡量软件。但是,就网站而言,我们是否有一种衡量网站复杂性的指标?我们可以衡量网站的复杂性吗?
回答
我想你可以认为“hub分数”是一个复杂性度量,因为它考虑了多少个外部站点被引用。 Jon Kleinberg的“超级链接环境中的权威人士”对此进行了讨论。
如果您将HTML页面中的HTML标签计数在显示为作为“运营商”,您可以计算每个网页的Halstead编号。
如果您检查产生网页的源代码,您可以计算这些网页的复杂性度量(Halstead,McCabe,SLOC,...)。为此,您需要可以从网页源计算这些指标的工具。
我们的SD Source Code Search Engine (SCSE)通常用于在大型代码库(例如网站代码)上进行搜索,即使代码库是混合语言(HTML,PHP,ASP.net,...)。作为一个副作用,SCSE恰好为每个可以搜索的文件(已编入索引)计算Halstead,McCabe,SLOC,评论计数和各种其他基本度量。
这些度量标准导出为XML文件;请参阅上面的Web链接举例。 这会给你一个粗略但即时的计算网站复杂性指标的能力。
虽然有人问6个飞蛾前...
如果你的网站是100%的静态网站没有的JavaScript的话,那么就需要通过后端的编程语言编程供电。间接地,影响后端编程的复杂性措施也会影响维护站点的复杂性。
Typicall,我已经观察到网页自身的可维护性和质量(或缺乏)与通过后端编程中的软件度量显示的质量(或缺乏)之间的关系。请不要在此引用我的话,并带上一粒盐。这完全是我在制作过的演出中制作的的观察结果。
如果您的站点(不论是否为动态内容)中也包含JavaScript,那么这也是源代码,可以根据软件复杂性度量标准显示可度量的属性。而且,由于JavaScript通常用于呈现HTML内容,因此它很可能(但不是确定性)那些残酷,难以维护的JavaScript会呈现出类似的残酷,难以维护的HTML(或者嵌入在残酷,难以维护的标记中)
对于一个完全静态的网站,你仍然可以设计一些类型的指标,虽然我不知道任何被发表的。
Regarless,一个好的网站应该有统一的链接。
它应该提供统一的导航。
另外,html页面不应复制或复制,很少或没有死链接。
网站内的链接应该是相对的(或者是它们的当前位置或者逻辑根目录'/'),而不是绝对的。也就是说,不要对域名进行硬编码。
URI命名模式应该是统一的(最好是小写。)网址不区分大小写,因此将链接混合使用这两种情况绝对没有意义。此外,链接可能映射到可能区分大小写的实际文件系统中的内容,从而导致下一个。
表示短语的URI应该是统一的(或者使用 - 或_来分隔单词,但不能同时使用,当然也不能使用空格)。避免骆驼的情况(请参阅以前对下壳的评论。)
我不知道任何已发布或主张的网站类似软件的指标,但我会想象如果有的话,他们可能会尝试测量一些我上面提到的属性。
如果人们用技术细节解释下调原因(假设他们不是薄利多销),那将会很好。 – 2011-11-22 18:44:03
This is a great paper关于这个话题。
考虑改进这个答案以包含不仅仅是一个链接。见http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-elsewhere-really-good-answers – 2012-12-02 22:51:40
- 1. 我可以批量登录网站吗?
- 2. 我可以按比例衡量ValueAxis吗?
- 3. 我们可以在Kendo Grid中读取复杂对象吗?
- 4. 我们可以覆盖父网站的web.config吗?
- 5. Firebug可以运行我的网站吗?
- 6. 我们可以在WordPress网站上有一个ASP.NET Webservice吗?
- 7. 我们可以用MSBuild建立一个网站吗
- 8. 我们可以在网站层次结构中移动SharePoint吗?
- 9. 我们可以自动复制* .dll.config吗?
- 10. MYSQL查询可以戏剧性地减缓我的网站吗?
- 11. 我可以主持asp.net网站吗?
- 12. 我可以自己制作网站吗?
- 13. 衡量网页的性能
- 14. 我可以通过我们的htaccess更改其他网站的链接吗?
- 15. 对于您复杂的算法,您如何衡量其性能?
- 16. 我们可以使用JQuery UI对话框进行复杂的操作吗?
- 17. ListView项可以是复杂的吗?
- 18. 我们可以做快速排序与n logn最坏情况的复杂性?
- 19. 组织大型网站中复杂文章的复杂网络
- 20. 我可以使用Chrome开发工具来衡量webworker的性能吗?
- 21. 我可以在其后面的网站上启用和禁用负载均衡器上的粘性会话吗?
- 22. 复杂调查网站
- 23. 可以复制网站吗?我需要从朋友的网站上获取设计,但我们想要尝试这种方式。可能吗?
- 24. 客户端浏览器可以在我们的网站上添加JavaScript吗?
- 25. 我们可以在简单的网站cPanel中部署一个.war文件吗?
- 26. 我们可以在现有的ASP.NET 4网站上使用Razor吗?
- 27. 我可以使用什么指标来衡量应用性能?
- 28. 我可以使用Google翻译翻译我的网站吗?
- 29. PHP:我可以编译/构建我的网站像.NET吗?
- 30. 我可以让我的ajax网站“抓取”吗?
+1这是一个很好,很少提出的问题。 – 2011-09-13 22:04:36