作家
登录

代码质量 – 代码的历史是代码未来的预言

作者: 来源: 2018-01-03 00:14:59 阅读 我要评论

  1. python complexity_analysis.py ./react/src/renderers/shared/fiber/ReactFiberBeginWork.js 
图11:代码质量 - 代码的汗青是代码将来的预言

对于软件质量,仅仅分析代码中的 hotspot 照样不敷的,除了代码层面隐蔽的缺点,我们这里还没有分析更宏不雅的架构上的演进,以及开辟者与代码之间社会学层面上的关系。在这篇之后,我做个预告,下一篇关于代码和工程质量分析的文┞仿我将测验测验大年夜更宏不雅的角度,阐述若何量化代码架构,经由过程分析指导一个工程在架构上的迭代和重构,祝大年夜家 Happy coding in 2018。

不算空行共 766 行,复杂度总分 1981,平均分 2.59,方差 1.29,最大年夜得分 8 分

n 代表不计算空行一共的行数,共 766 行;total 代表文件复杂度的总分 1981 分,分值很高(如不雅横向比对其他文件更明显);mean 代表平均分表示还好为 2.59 分;sd代表方差得分越低表示有越多的行的复杂度得分家近平均分,得分 1.29 比较不错,然则最大年夜的行复杂度达到了 8 分,算是比较大年夜的数值了。后续这个文件的职责可否被进一步单一化,把更多的逻辑剥离出来呢?这个就须要 React 的开辟者们进行衡量岭。

图12:代码质量 - 代码的汗青是代码将来的预言

综合维度排名第一的 ReactFiberScheduler.js 的得分

我们也可以经由过程版本控制(大年夜最初的 react_evo.log 获得首尾的版本),获得一个代码复杂度的变更信息:

  1. python ../hotspots-helper/git_complexity_trend.py --start 95fed0163 --end 9ce135f86 --file ./src/renderers/shared/fiber/ReactFiberBeginWork.js > complexity_trend.csv 

经由过程 excel 我们看下 复杂度的变更趋势:

图13:代码质量 - 代码的汗青是代码将来的预言

ReactFiberBeginWork.js 复杂度在 15.0.0 版本到 16.0.0 版本之间的变更趋势

有了这些数据以及可视化的体验,我们不只可以或许在不熟悉一个项目标情况下懂得代码的构造,找到可能的 hotspot,也可以或许经由过程版本控制体系,获得具体文件质量的趋势变更,大年夜而可以或许指导 code review,也可以或许为后续代码的重构指明偏向。

结语

【编辑推荐】

  1. 5分钟快速入门,用Python做SQLite数据库开辟,附代码合适初学
  2. 30行Python代码刷王者光荣金币
  3. 你知道若何改良遗留的代码库吗?
  4. 8 个赞助你编写可保护、精简化前端代码的 CSS 策略
  5. 1行Python代码快速实现FTP办事器
【义务编辑:未丽燕 TEL:(010)68476606】

  推荐阅读

  发挥税收大数据优势 利用大数据监督税务工作

【限时免费】岁尾最强一次云计算大年夜会,看传统、社区、互联网企业若何碰撞? 出力于“查”,筛选锁定疑点信息。面对改头换面、花样翻新的“四风”问题,发挥自身优势>>>详细阅读


本文标题:代码质量 – 代码的历史是代码未来的预言

地址:http://www.17bianji.com/lsqh/40179.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)