PHP   发布时间:2019-11-21  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了phploc输出说明大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我对我的一个 PHP项目(开源)运行phploc,我会看到这个输出.
phploc 1.6.4 by Sebastian BergmAnn.

Directories:                                          3
Files:                                               33

Lines of Code (LOC):                               2358
  Cyclomatic Complexity / Lines of Code:           0.08
Comment Lines of Code (CLOC):                       903
Non-Comment Lines of Code (NCLOC):                 1455

Namespaces:                                           0
Interfaces:                                           3
Classes:                                             28
  Abstract:                                           1 (3.57%)
  Concrete:                                          27 (96.43%)
  Average Class Length (NCLOC):                      49
Methods:                                            149
  Scope:
    Non-Static:                                     128 (85.91%)
    Static:                                          21 (14.09%)
  Visibility:
    Public:                                         103 (69.13%)
    Non-Public:                                      46 (30.87%)
  Average Method Length (NCLOC):                      9
  Cyclomatic Complexity / number of Methods:       1.69

Anonymous Functions:                                  0
Functions:                                            3

Constants:                                            9
  Global constants:                                   0
  Class constants:                                    9

通过这种静态分析,如何判断这个代码库是好还是坏?或者写得有多好或多坏?

>如果太低或太高,圈复杂性是否良好?
> 3.57%的抽象类是好还是坏?
> 14.09%静态方法.它应该在OOP代码库中更低吗?
>没有使用命名空间,是好还是坏?

最后一个问题如何使用phploc的输出分析代码库?

解决方法

低圈复杂度好,高度差; statics are hard to unit test,但(然有些人认为它们和eval一样糟糕)但它们确实有用;来自phploc的其他措施需要解释.

但你真的应该使用phploc和其他工具,如pdependphpmd.pdepend网站特别解释了很多使用的分析,而phpR_902_11845@d输出是非常明显的

编辑

作为比较,我正在处理的代码(https://github.com/MarkBaker/PHPGeodetic):我对抽象/具体类的级别感到满意,尽管它可能会更高一些;我有一种方法具有更高的圈复杂度,足以使这些数字略微偏斜,但这并不容易导致被破坏;以及一些较长的方法(但不足以触发phpR_902_11845@d警告).

Lines of Code (LOC):                               4003
  Cyclomatic Complexity / Lines of Code:           0.07
Comment Lines of Code (CLOC):                      1580
Non-Comment Lines of Code (NCLOC):                 2423

Namespaces:                                           0
Interfaces:                                           1
Traits:                                               0
Classes:                                             25
  Abstract:                                           4 (16.00%)
  Concrete:                                          21 (84.00%)
  Average Class Length (NCLOC):                     103
Methods:                                            160
  Scope:
    Non-Static:                                     129 (80.62%)
    Static:                                          31 (19.38%)
  Visibility:
    Public:                                         131 (81.88%)
    Non-Public:                                      29 (18.12%)
  Average Method Length (NCLOC):                     16
  Cyclomatic Complexity / number of Methods:       2.12

Anonymous Functions:                                  2
Functions:                                            0

Constants:                                           66
  Global constants:                                   0
  Class constants:                                   66

总的来说,我很想使用公共/私人,非静态/静态和混凝土/抽象的80:20规则;但很大程度上取决于你实际编码的内容

可能更重要的是Cyclomatic Complexity / Methods of Methods …我不喜欢这个数字太高;但如果它高于2.5平均值,我会更加密切地关注phpR_902_11845@d统计数据

大佬总结

以上是大佬教程为你收集整理的phploc输出说明全部内容,希望文章能够帮你解决phploc输出说明所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。