182得票11回答
最佳代码宽度的研究?

如果您在所选的 IDE 中启用了“查看右边距”,那么默认情况下它可能是80个字符。我倾向于将其更改为120,没有其他公司要求我以不同的方式操作,只因为几年前我在一家公司的标准就是这样。我的问题是,是否有任何研究实际上显示80个字符是代码可读性的最佳最大宽度,还是这个值只是“一直以来就是这样”,...

114得票11回答
`if key in dict` 和 `try/except` - 哪个更易读?

我对成语和可读性有疑问,这个特定情况下似乎存在 Python 哲学的冲突: 我想从字典 B 构建字典 A。如果在 B 中找不到特定的键,则什么也不做继续执行。 哪种方式更好?try: A["blah"] = B["blah"] except KeyError: pass 或...

109得票6回答
当使用map.get()时,是否使用java Map.containsKey()是多余的?

我一直在思考,在最佳实践中,是否允许不使用java.util.Map上的containsKey()方法,而是对get()的结果进行空值检查。 我的理由是,这样做似乎重复了两次查找值--首先是containsKey(),然后是get()。 另一方面,可能大多数标准的Map实现会缓存最后一次查...

81得票4回答
如何处理 Pylint 的 "too-many-instance-attributes" 错误信息?

我刚刚尝试使用Pylint对一些代码进行了检查,最后只剩下一个错误。R0902: too-many-instance-attributes (8/7) 我理解限制实例属性数量的原因,但是七个似乎有点少。我也意识到语法检查器不应该有最后的决定权。然而,我想知道我应该做什么,而不是:def __i...

77得票6回答
JavaScript事件代码中,使用匿名函数作为回调函数和参数与使用命名函数相比有哪些好处?

我对JavaScript还比较新。我理解这门语言的许多概念,已经阅读了有关原型继承模型的文章,并且越来越多地涉足交互式前端内容。这是一门有趣的语言,但我总是被非常复杂的交互模型中充斥的回调“意大利面条”所吓到。 有一件事情一直让我感到奇怪,尽管JavaScript嵌套回调的可读性很差,但在许...

66得票12回答
Python列表推导式 - 希望避免重复评估

我有一个列表推导式,大致如下:[f(x) for x in l if f(x)] 假设l是一个列表,f(x)是一个昂贵的函数,它返回一个列表。 我希望避免在每个非空出现 f(x) 的情况下对其进行两次评估。有没有办法在列表推导中保存它的输出? 我可以删除最后的条件,生成整个列表然后修剪它,...

53得票4回答
最佳的LINQ查询格式化方法

在你忽略或投票关闭这个问题之前,我认为这是一个值得提出的问题,因为代码清晰度是一个重要的讨论话题,它对编写可维护的代码至关重要,我非常希望那些曾经遇到过这个问题的人能够给出答案。 最近我遇到了这个问题,由于嵌套层数较多,LINQ查询很容易变得非常复杂。 以下是我为同一相对不复杂的查询所想出...

42得票4回答
模板函数在类内和类外的定义有什么区别?

我想知道将模板函数声明为类外函数与在类内部声明相比是否有任何优势。 我正在努力清楚地理解这两种语法的优缺点。 以下是一个示例: 类外函数:template<typename T> struct MyType { template<typename... Args...

41得票9回答
多行“if”语句的缩进代码风格?

当缩进长的 if 条件语句时,通常会像这样做(实际上,PyDev 也是这么缩进的): 当缩进长的 if 条件语句时,通常会像这样做(实际上,PyDev 也是这么缩进的):if (collResv.repeatability is None or collResv.something...

34得票6回答
如何在Android Studio中对齐/格式化代码?

是否有一种/快捷方式/内置功能可以对操作数进行对齐代码,例如'='号? 例如,Xcode有一个名为XAlign的工具(https://github.com/qfish/XAlign),允许用户选择需要对齐的代码并使用快捷键自动将其对齐。 在Android Studio中有一个“字段组”功能...