在某些语言中,有规则/最佳实践/等.促进软件安全,确保预期的运行时行为等.我想到的两个是MISRA for C/C++,以及Ada的Ravenscar配置文件.如果按照这些标准加盖代码,通常会对代码产生温暖的模糊感.Java有这样的标准吗?
我不认为有类似于MISRA C/C++ Java的最佳实践,我认为使用像Java这样的语言也不太必要,因为它没有像C和C++这样的未定义或未指定行为的角落.有.诸如缺少Java中的显式指针以及运算符始终检查数组索引的边界这一事实使Java成为比C或C++更安全的语言.
大多数Java开发人员似乎都遵循一种通用的编码标准:Java编程语言的代码约定,但这是一种风格指南,而不是最佳实践指南.
有一些适用于Java的良好且众所周知的静态代码分析工具:例如FindBugs和PMD,它将检查您的代码是否存在可能危险的构造或不良实践.
如果您想了解Java中潜在的缺陷,那么强烈建议使用两本书:Effective Java和Java Puzzler.
目前,还没有 MISRA Java,也没有任何立即创建 MISRA Java 的计划。
MISRA 技术委员会已对该主题进行了几次简短讨论,但在没有任何需求(和/或志愿者参与该主题)的情况下,这种情况不太可能发生。
更新:六年过去了...
在我发言的会议上,这个问题已经被问过好几次了,通常都得到了观众的广泛支持。我总是通过询问愿意成为委员会成员的观众来回答......这让房间安静了:(
TL;DR:如果有足够多的志愿者挺身而出,我们就会这么做!
[以个人身份发布,尽管是 MISRA 技术委员会成员]
--- 2023 年 7 月更新 ---
我们不再被问及 MISRA Java,但 MISRA Rust 当然是最新的建议。
这同样适用:如果有足够多的志愿者挺身而出,我们就可以这么做。
| 归档时间: |
|
| 查看次数: |
3051 次 |
| 最近记录: |