问题标签 [readability]

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.

0 投票
12 回答
12693 浏览

php - 如何正确格式化 PHP 'IF ELSE' 语句?

这是一个长期存在的问题,我在许多热火朝天的编码会议中遇到过。

一个人以这种方式编码,另一个人以这种方式编码。所以经过多次推拉,我很好奇......有没有正确的方式来表达 PHP 'IF ELSE' 语句?

我个人使用:

尽管我已经提出了其他选择,但经过多次争论,例如:

或者

或者

0 投票
10 回答
12889 浏览

language-agnostic - 提高代码可读性

当涉及到代码文档时,通常认为代码应该自我解释,并且内联代码文档(不包括公共 API 文档)应该只解释元代码问题,例如解决方法、解释为什么选择特定实现等。

您如何使您的代码更具可读性和更多解释性


编辑: 除了一般评论外,我还在寻找具体的提示。因此,如果您说“简短但有意义的变量名”,如果您也能得到一个有用的提示(例如“使用三字原则”),那就太好了。

0 投票
5 回答
303 浏览

c# - 您发现哪种方法输出动态 HTML 更具可读性?

我想这将归结为个人喜好,但你会走哪条路?

比。

还是我根本不应该这样做,而是使用 HtmlTextWriter 类?

编辑:这里有一些非常好的建议。我们在 2.0 框架上,所以 LINQ 不可用

0 投票
16 回答
73626 浏览

sql - 为什么我应该将我的 SQL 关键字大写?

可能重复:
是否有充分的理由为 T-SQL 关键字使用大写?

简单的问题。我个人发现一串小写字符比一串大写字符更具可读性。一些旧的/流行的 SQL 是否区分大小写?

以供参考:

对比

前者对我来说似乎更具可读性,但我更经常看到后者。

0 投票
1 回答
1161 浏览

javascript - 嵌套 AJAX 回调函数的可读性

请帮我重构这个 Javascript 代码。预定消息发送有很大的形式(发送日期,重复类型,结束日期/数量,信用系统 - 需要在运行时计算预定发送计划的总成本)。我正在为此表单编写 Javascript 验证器。

有一个验证算法 1)检查发送日期时间是否不在过去的时刻 2)检查“结束日期”字段时间是否大于第一次发送日期时间 3)验证调度计划的总成本

(大约有 6 个步骤,但我在这里只写了 3 个 - 我认为这足以掌握问题)

“保存预定计划”按钮在“点击”事件上有一个 JavaScript 监听器。此侦听器调用此函数:

这是它的声明:

我们稍后有嵌套请求:

还有一个在这里:

我不喜欢这种方法,乍一看很难理解算法。做很多(大约 6 个)嵌套的 AJAX 查询来验证单个表单可能不好?也许应该将它合并到单个请求中,然后我们将在服务器端进行所有验证活动?我应该如何重构这段代码?

0 投票
12 回答
1989 浏览

javascript - 我们应该在 JavaScript 编码中使用长名称还是短名称?

在我的工作组中有一个关于 JavaScript 编码的讨论。有些人认为我们应该使用长名称以获得更好的可读性;其他人认为短名称应该有利于相同的在线位。

通常,它与编码约定有关。一方面认为诸如“fAutoAdjustWidth”之类的标识符是可以的,而另一些则更喜欢“fAtAjtW”。

那么,更好的方法是什么?我们是否应该为了性能而牺牲可读性?

0 投票
13 回答
3337 浏览

regex - 如何编写更易维护的正则表达式?

我开始觉得使用正则表达式会降低代码的可维护性。正则表达式的简洁和强大有一些不好的地方。Perl 将其与默认运算符等副作用结合在一起。

我确实有用至少一个句子给出基本意图和至少一个匹配内容的示例来记录正则表达式的习惯。

因为正则表达式是建立起来的,所以我觉得绝对有必要评论表达式中每个元素的最大组成部分。尽管如此,即使是我自己的正则表达式也让我摸不着头脑,就好像我在读克林贡语一样。

你是否故意降低你的正则表达式?您是否将可能更短且功能更强大的步骤分解为更简单的步骤?我已经放弃了嵌套正则表达式。是否存在由于可维护性问题而避免使用的正则表达式构造?

不要让这个例子模糊了这个问题。

如果迈克尔·阿什(Michael Ash )的以下内容中存在某种错误,那么您是否有做任何事情但完全扔掉它的前景?

根据请求,可以使用上面的 Ash 先生的链接找到确切的目的。

比赛01.1.02 | 2001 年 11 月 30 日 | 2000 年 2 月 29 日

不匹配02/29/01 | 2002 年 13 月 1 日 | 2002 年 11 月 00 日

0 投票
5 回答
1281 浏览

c - Windows API 中的 C 注册表函数

RegOpenKeyEx()

我想 printf("Success") 或 printf("Failure") 取决于函数是失败还是成功

我将如何在保持整洁和易读的同时做这样的条件?

我想远离这个:

0 投票
6 回答
11020 浏览

c# - 引用相等性能差异?((object)obj1 == (object)obj2) 与 object.ReferenceEquals(obj1, obj2)

object.ReferenceEquals使用方法与使用相比是否有额外的开销((object)obj1 == (object)obj2)

在第一种情况下,将涉及静态方法调用,并且在这两种情况下都将涉及到对象的某种形式的强制转换。

即使编译器平衡了这些方法,不等式又如何呢?

相比于...

我想在某些时候,会发生逻辑否定,或者在 != 运算符中,或者应用于 ReferenceEquals 方法的结果。你怎么看?

还有可读性问题需要考虑。ReferenceEquals 在检查相等性时似乎更清楚,但对于不等式,人们可能会错过!前面的object.ReferenceEquals,而!=第一个变体中的 the 很难忽视。

0 投票
7 回答
25802 浏览

php - “公共静态”还是“静态公共”?

关于 PHP 中函数声明关键字的一个小问题:如果您有一个静态的类方法,该关键字应该static在可见性关键字(public, protected, private)之前还是之后?假设您的所有方法,无论是静态方法还是其他方法,都有一个可见性关键字,那么您希望可见性关键字相对于关键字保持在同一位置function

现在假设一对是静态的:

此外,如果一个方法是静态的,你希望它是第一个看到的,因为这对它是什么类型的方法的影响甚至比可见性关键字的影响更大。

这严格来说是一个可读性问题,因为它显然没有功能或设计后果。(我能想到的。)