问题标签 [coding-style]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
variables - 一个名为 i 的变量是不可接受的吗?
就变量命名约定而言,应该命名迭代器i
还是更语义化的东西count
?如果你不使用i
,为什么不呢?如果您认为这i
是可以接受的,是否存在不应该使用它的迭代案例?
coding-style - 设计和编码 - 从上到下还是从下到上?
在编码时,根据您的经验,更好的方法是什么?
- 将问题分解成足够小的部分,然后实施每一部分。
- 分解问题,然后使用自上而下的方法实施。
- 任何其他?
api - 是否应该记录 API 的所有公共方法?
在编写“库”类型类时,最好总是在 java 中编写标记文档(即 javadoc)还是假设代码可以是“自记录”的?例如,给定以下方法存根:
javadoc 似乎是不言而喻的,如果功能发生变化,只需要更新噪音。但是关于冲洗而不关闭流的句子可能很有价值。
因此,在编写库时,最好:
a) 总是记录
b) 记录任何不明显的东西
c) 从不记录(代码应该自己说话!)
我通常使用 b),我自己(因为代码可以是自记录的,否则)...
coding-style - 没有权威的责任是没有意义的——基于技术的解决方案?
我爸爸总是说“没有权威的责任是没有意义的”。
但是,我发现作为开发人员,我们总是陷入以下情况:
- 负责确保软件“无错误”,但无权实施错误跟踪系统
- 负责按时完成项目,但不能影响需求、质量或团队资源(项目管理的三个部分)
- 等等
当然,你可以说很多事情来解决这个问题——找一份新工作,和老板打架,等等......
但是这个问题的技术解决方案呢?也就是说,你可以自己做什么样的编码事情,而不必说服团队纠正其中的一些问题——或者你可以使用什么样的工具来证明为什么未跟踪的错误会伤害你,错过最后期限是因为质量问题,你如何利用这些工具获得更多的“权威”,而不必当老板?
***举个例子——老板来找你说“为什么有这么多虫子!!?!?” - 我们中的大多数人会说“我们没有一个好的系统来跟踪他们!”,但根据我的经验,这通常被视为一个借口。那么,如果您可以指向一些报告(经理喜欢报告)并说“看,这就是为什么”?
c++ - #ifdef 与 #if - 作为启用/禁用特定代码部分编译的方法,哪个更好/更安全?
这可能是风格问题,但我们的开发团队中存在一些分歧,我想知道是否其他人对此事有任何想法......
基本上,我们有一些在正常开发过程中关闭的调试打印语句。就个人而言,我更喜欢执行以下操作:
不过,一些团队更喜欢以下内容:
...哪种方法听起来更好,为什么?我的感觉是第一个更安全,因为总是有一些定义,并且没有危险它可以破坏其他地方的其他定义。
coding-style - 布尔值作为方法参数是不可接受的吗?
我的一位同事表示,布尔值作为方法参数是不可接受的。它们应由枚举代替。起初我没有看到任何好处,但他给了我一个例子。
什么更容易理解?
或者
现在我明白了!;-)
这绝对是一个示例,其中枚举作为第二个参数使代码更具可读性。
那么,您对这个话题有何看法?
.net - 在应用程序中集中错误消息的最佳方法是什么?
在使用错误消息(或其他用户消息)的整个应用程序中,我通常对字符串进行硬编码。显然,这可能非常糟糕(尤其是当您可能不得不返回并本地化应用程序时)。集中这些字符串的最佳方法是什么?静态类?常数?一个 XML 文件?或组合(例如创建一个带有用于从 xml 文件中读取的常量的静态类)。
c++ - 优缺点:在条件语句中初始化变量
在 C++ 中,您可以在 if 语句中初始化变量,如下所示:
为什么人们会认为这种不好或好的风格?有什么好处和坏处?
我个人喜欢这种风格,因为它限制了 pThing 变量的范围,所以当它为 NULL 时永远不会被意外使用。但是,我不喜欢你不能这样做:
如果有办法使上述工作,请张贴。但如果那是不可能的,我仍然想知道为什么。
coding-style - 冗余代码结构
我经常看到的最严重的冗余代码结构涉及使用代码序列
而不是简单地写
我在各种语言中都看到过这个初学者错误:从 Pascal 和 C 到 PHP 和 Java。您会在代码审查中标记哪些其他此类结构?
php - PHP 遵循哪种编码约定?
我应该坚持 Sun 的 PHP 代码 Java 代码约定吗?