`
龙儿筝
  • 浏览: 38881 次
社区版块
存档分类
最新评论

鸿蒙高质量代码静态检测200条二

阅读更多

52. @typescript-eslint/no-unnecessary-type-arguments

当类型参数和默认值相同时,不允许显式使用

 

53. @typescript-eslint/no-unnecessary-type-assertion

 

禁止不必要的类型断言

 

54. @typescript-eslint/no-unnecessary-type-constraint

 

不允许在泛型中使用不必要的约束条件

 

55. @typescript-eslint/no-unused-expressions

 

代码中禁止包含未使用的表达式

 

56. @typescript-eslint/no-unused-vars

 

禁止定义未使用的变量

 

57. @typescript-eslint/no-useless-constructor

 

禁止不必要的构造函数

 

58. @typescript-eslint/prefer-enum-initializers

 

推荐显式初始化每个枚举成员值

 

59. @typescript-eslint/prefer-for-of

 

强制使用“for-of”循环而不是标准“for”循环

 

60. @typescript-eslint/prefer-function-type

 

强制使用函数类型而不是带有签名的对象类型

 

61. @typescript-eslint/prefer-includes

 

强制使用“includes”方法而不是“indexOf”方法

 

62. @typescript-eslint/prefer-nullish-coalescing

 

强制使用空合并运算符(??)而不是逻辑运算符

 

63. @typescript-eslint/prefer-optional-chain

 

强制使用链式可选表达式,而不是链式逻辑与、否定逻辑或、或空对象

 

64. @typescript-eslint/prefer-readonly

 

如果私有成员从未在构造函数之外进行修改,则要求将其标记为“只读”

 

65. @typescript-eslint/prefer-readonly-parameter-types

 

要求将函数参数解析为“只读”类型,以防止参数被修改而产生一些副作用

 

66. @typescript-eslint/prefer-reduce-type-parameter

 

调用“Array#reduce”时推荐使用类型参数而不是强制转换类型

 

67. @typescript-eslint/prefer-regexp-exec

 

如果未提供全局标志,推荐使用RegExp#exec”,而不是“String#match”

 

68. @typescript-eslint/prefer-string-starts-ends-with

 

强制使用“String#startsWith”和“String#endsWith”而不是其他检查子字符串的等效方法

 

69. @typescript-eslint/promise-function-async

 

要求任何返回Promise的函数或方法标记为async

 

70. @typescript-eslint/quotes

 

强制使用一致的反引号、双引号或单引号风格

 

71. @typescript-eslint/require-array-sort-compare

 

要求调用“Array#sort”时,始终提供“compareFunction”

 

72. @typescript-eslint/require-await

 

异步函数必须包含“await”

 

73. @typescript-eslint/restrict-plus-operands

 

要求加法的两个操作数都是相同的类型,并且是“bigint”、“number”或“string”

 

74. @typescript-eslint/restrict-template-expressions

 

要求模板表达式中的变量为“string”类型

 

75. @typescript-eslint/return-await

 

要求异步函数返回“await”

 

76. @typescript-eslint/semi

 

要求或不允许使用分号,例如never不允许使用分号,always允许使用分号

 

"@typescript-eslint/semi": [

  "error",

  "never"

]

77. @typescript-eslint/space-before-function-paren

 

强制在函数名和括号之间保持一致的空格风格

 

78. @typescript-eslint/space-infix-ops

 

运算符前后要求有空格

 

79. @typescript-eslint/strict-boolean-expressions

 

不允许在布尔表达式中使用非布尔类型

 

80. @typescript-eslint/switch-exhaustiveness-check

 

要求switch语句对于联合类型中值的判断是详尽无遗的

 

81. @typescript-eslint/triple-slash-reference

 

不允许某些三斜杠引用,推荐使用ES6风格的导入声明

 

82. @typescript-eslint/type-annotation-spacing

 

类型注释前后需要一致的空格风格

 

83. @typescript-eslint/typedef

 

在某些位置需要类型注释

 

84. @typescript-eslint/unbound-method

 

强制类作用域中的方法在预期范围内调用

 

85. @typescript-eslint/unified-signatures

 

如果两个重载函数可以用联合类型参数(|)、可选参数(?)或者剩余参数(...)来重构成一个函数,不允许使用重载

 

86. prefer-const

 

推荐声明后未修改值的变量用const关键字来声明

 

87. eqeqeq

 

要求使用===和!==

 

88. @security/no-commented-code

 

不使用的代码段建议直接删除,不允许通过注释的方式保留

 

89. @security/no-cycle

 

禁止使用循环依赖

 

90. @security/no-unsafe-aes

 

该规则禁止在AES加密算法中使用不安全的ECB加密模式,推荐使用Petal Aegis SDK中的安全AES接口

 

91. @security/no-unsafe-dh

 

该规则禁止使用不安全的DH密钥协商算法

 

92. @security/no-unsafe-dh-key

 

该规则禁止使用不安全的DH密钥

 

93. @security/no-unsafe-dsa

 

该规则禁止使用不安全的DSA签名算法

 

94. @security/no-unsafe-dsa-key

 

该规则禁止使用不安全的DSA密钥

 

95. @security/no-unsafe-ecdsa

 

该规则禁止在ECDSA签名算法中使用不安全的SHA1摘要算法,推荐使用Petal Aegis SDK中的安全ECDSA接口

 

96. @security/no-unsafe-hash

 

该规则使用禁止不安全的哈希算法

 

97. @security/no-unsafe-mac

 

该规则禁止在MAC消息认证算法中使用不安全的哈希算法

 

98. @security/no-unsafe-rsa-encrypt

 

该规则禁止使用不安全的RSA非对称加密算法

 

99. @security/no-unsafe-rsa-key

 

该规则禁止使用不安全的RSA密钥

 

100. @security/no-unsafe-rsa-sign

 

该规则禁止不安全的RSA签名算法

 

101. @performance/high-frequency-log-check

 

不建议在高频函数中使用Hilog

0
0
分享到:
评论

相关推荐

    hmwechat-master.zip

    HMWeChat-master.zip是一个压缩包,包含了HMWeChat项目的源代码和资源文件,这是一个专为华为鸿蒙操作系统(HarmonyOS)3.0版本设计的仿微信应用项目。该应用利用了鸿蒙系统的ArkUI框架,采用eTS(Eco TypeScript)...

    sistemasmoveis

    4. **HarmonyOS /鸿蒙**: 华为开发的多设备操作系统,旨在为不同类型的智能设备提供统一的体验。 **TypeScript** TypeScript是JavaScript的一个超集,由Microsoft开发。它引入了静态类型、接口、类和模块等特性,...

    全国计算机等级考试二级openGauss数据库程序设计样题解析

    主要内容涵盖单选题和操作题两大部分。单选题涉及openGauss数据库的基本概念、数据模型、SQL语法、事务管理和用户权限等方面的知识点。操作题则围绕一个名为bookdb的图书购买信息数据库展开,具体任务包括插入图书信息、更新顾客信息、删除购买记录、查询特定图书信息以及创建视图、存储过程和触发器等实际操作。每道题目均附带详细的解题步骤和最终答案。

    新建 Microsoft Word 文档 (9).docx

    新建 Microsoft Word 文档 (9).docx

    Delphi 12.3控件之nrCommLib Pro v9.54 Full Source for D10.3-D12.7z

    Delphi 12.3控件之nrCommLib Pro v9.54 Full Source for D10.3-D12.7z

    三菱PLC FX5U控制四轴伺服系统:硬件配置、参数设置及运动控制详解

    内容概要:本文详细介绍了使用三菱PLC FX5U控制四轴伺服系统的全过程,涵盖硬件配置、电气接线、参数设置以及运动控制逻辑。硬件方面,选用三菱FX5U-64MT作为主控制器,搭配四个MR-JE-20A伺服驱动器和其他必要组件。软件部分则深入探讨了轴参数初始化、原点回归、多轴联动、HMI界面设计及报警处理等关键技术环节。特别针对旋转轴的特殊处理进行了详细说明,如双速原点回归、绝对定位指令的应用等。此外,还提供了调试经验和优化技巧,确保系统的高精度和平稳运行。 适合人群:从事自动化控制系统设计、调试的技术人员,尤其是对三菱PLC和伺服系统有一定了解的研发人员。 使用场景及目标:适用于工业自动化领域的四轴伺服控制系统开发,旨在帮助工程师掌握从硬件选型到软件编程的一整套解决方案,提高项目的成功率和技术水平。 其他说明:文中附有多份参考资料,包括完整的程序文件、界面工程、CAD接线图和伺服参数清单,便于读者进行实际操作和验证。

    分阶段学习:先掌握基础,再深入细分领域 理论与实践结合:学完算法后立刻用代码实现 保持持续学习:AI技术迭代快,需跟踪最新进展

    分阶段学习:先掌握基础,再深入细分领域。 理论与实践结合:学完算法后立刻用代码实现。 保持持续学习:AI技术迭代快,需跟踪最新进展。

    电子硬件课程设计-Word文档

    电子硬件课程设计

    智慧农贸信息化管理平台.zip

    Java项目基于ssm框架的课程设计,包含LW+ppt

    脚本-压测相关-zyx编写

    脚本-压测相关-zyx编写

    jspm机房预约系统lw+ppt.zip

    Java项目基于ssm框架的课程设计,包含LW+ppt

    app.mobileconfig

    app.mobileconfig

    基于MotorCAD的2极12槽永磁直流有刷电机设计与优化教程

    内容概要:本文详细介绍了使用MotorCAD进行2极12槽永磁直流有刷电机的设计与优化方法。首先,通过Python脚本设置电机的基本参数,如外径、轴向长度、额定转速等。接着,深入探讨了磁钢选型、绕组设置、电磁仿真、热分析等多个关键技术环节。针对常见的设计难题,如齿槽转矩、磁钢充磁方向、绕组跨距等提供了具体的解决方案。同时,还分享了一些提高仿真精度和优化性能的实用技巧,如参数扫描、FEA计算、热管理等。最后,通过实测数据分析验证了设计方案的有效性。 适合人群:电机设计工程师、高校相关专业师生、对电机设计感兴趣的开发者。 使用场景及目标:适用于需要精确设计和优化小型永磁直流有刷电机的场合,帮助用户掌握MotorCAD的具体应用,提高设计效率和产品质量。 其他说明:文中提供的Python和VB脚本示例有助于自动化参数设置和批量处理任务,减少重复劳动。此外,还强调了在设计过程中需要注意的关键技术和常见陷阱,确保设计方案的可行性和可靠性。

    三相逆变器基于PI闭环与解耦控制的MATLAB仿真实现

    内容概要:本文详细介绍了三相逆变器在MATLAB/Simulink环境下的PI闭环控制及解耦控制的实现方法。首先,通过坐标变换将三相电流从静止坐标系转换到旋转坐标系,确保功率守恒并实时更新转子位置角。接着,实现了带有抗饱和处理的PI控制器,防止积分风-up现象。然后,针对d轴和q轴之间的耦合问题,引入了解耦控制,通过低通滤波和交叉耦合项来稳定系统。此外,还讨论了PWM生成模块的死区时间和仿真结果的验证方法,强调了参数调试的重要性和具体策略。 适合人群:电力电子工程师、自动化控制领域的研究人员以及对三相逆变器控制感兴趣的高校师生。 使用场景及目标:适用于需要深入了解三相逆变器控制原理和技术实现的研究项目或工程应用。主要目标是掌握PI控制器的设计、解耦控制的应用及其在MATLAB/Simulink中的仿真实现。 其他说明:文中提供了详细的代码示例和调试技巧,帮助读者更好地理解和实践相关理论。同时提醒读者,仿真成功并不代表实际硬件运行无误,建议在实验过程中准备必要的保护措施。

    58面经面试过程和题目.txt

    58面经面试过程和题目.txt

    OceanBase OBCP 实验指导手册V1.3

    OceanBase OBCP 实验指导手册V1.3

    ABB喷涂机器人IRC5P与PLC Profinet通讯配置及程序号启动详解

    内容概要:本文详细介绍了ABB喷涂机器人IRC5P与PLC通过Profinet通讯进行程序号启动的具体步骤和注意事项。主要内容涵盖Profinet通讯的基本配置,包括设备名称、IP地址设置,RAPID代码编写,任务声明,信号映射,以及调试技巧。文中还分享了许多实际调试中的经验和常见错误,如大小写敏感、IP地址分配、程序号有效性和信号防抖处理等。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是负责机器人与PLC通讯配置的技术人员。 使用场景及目标:帮助技术人员正确配置ABB喷涂机器人IRC5P与PLC之间的Profinet通讯,确保程序号能够顺利启动,避免常见的配置错误和调试难题。 其他说明:文章强调了硬件和软件配置相结合的重要性,并提供了详细的代码示例和调试建议,有助于提高系统的稳定性和可靠性。

    电子硬件课后习题题目及要求.docx

    电子硬件课后习题题目及要求.docx

    亲测开源好用的红盟云发卡源码对接支付宝等支持一件搭建

    亲测开源好用的红盟云发卡源码对接支付宝等支持一件搭建,方便建立自己的发卡平台,源码全部开源无加密,可方便而开使用。 测试环境:php7.2+mysql+宝塔面板 安装教程: ①设置public运行目录 ②设置thinkphp伪静态 ③访问域名填写数据库信息根据提示安装

    Delphi 12.3控件之MiTeC-System-Information-Component-Suite-15.1.0-Full-Source.7z

    Delphi 12.3控件之MiTeC_System_Information_Component_Suite_15.1.0_Full_Source.7z

Global site tag (gtag.js) - Google Analytics