coding-style 相关问题

**不使用!此标记指的是一个完全自以为是的主题,因此不再是主题。**遵循编码风格和惯例的问题。

格式化块注释

第一种格式似乎比第二种更受欢迎。这是为什么? 第一个(每行都有星号) /* * 第 1 行 * 第 2 行 * 第 3 行 */ 第二个(最小量

回答 7 投票 0

如果所有这些操作无论如何都必须发生,那么在一行中编写一组操作有什么好处吗?

从编译后的角度(而不是编码语法的角度)来看,在 C# 中,一行上发生的一组操作之间的编译代码是否存在任何实际差异...

回答 6 投票 0

如何对我们自己的c文件使用checkpatch.pl脚本来验证编码风格

我编写了一个示例字符驱动程序。 我想验证编码风格是否与Linux内核编码风格匹配。 我这样做了: root@vkalyanam-Lenovo-B41-80:~/linux/scripts# ./checkpatch.pl -...

回答 2 投票 0

两个独立的 JavaScript 脚本可以共享变量吗?

如果我在带有 JavaScript 的 HTML 页面中有两个单独的脚本,变量是否在整个页面之间共享?还是只在他们自己的声明范围内? 例子: var title = "你好...</desc> <question vote="37"> <p>如果我在一个带有 JavaScript 的 HTML 页面中有两个单独的脚本,变量是否在整个页面之间共享?还是只在他们自己的声明中?</p> <p>示例:</p> <pre><code>&lt;script&gt; var title = &#34;Hello World!&#34;; &lt;/script&gt; // random HTML/PHP &lt;script&gt; document.write(title); &lt;/script&gt; </code></pre> <p>会写“Hello World!”吗? 这似乎是糟糕的编码约定,否则我怎么能以正确的形式实现这样的事情。</p> </question> <answer tick="true" vote="48"> <p>示例中的变量标题被声明为全局变量,因此它将可供加载到同一页面的所有脚本使用。更重要的是,如果同一页面上已经有一个名为 <pre><code>title</code></pre> 的全局变量,当你给它赋值“Hello World!”时,它的值将会被覆盖</p> <p>避免此类问题的通常做法是声明一个全局变量,然后将所有其他变量放入其中。例如:</p> <pre><code>var bobbyS_vars = { title: &#34;Hello World!&#34;; }; </code></pre> <p>为该单独的全局变量分配一个其他人不可能选择的名称,例如您的姓名或雇主的名称,或者最好的是属于您或您的雇主的域名。</p> <p>处理此问题的另一种更常见的方法是利用 JavaScript 处理函数内变量范围的方式。例如,创建一个匿名函数,在该函数内声明代码的<em>all</em>,然后通过在声明末尾放置 () 来调用声明末尾的函数。例如:</p> <pre><code>(function() { var title = &#34;Hello World!&#34;; document.write(title); })(); // title is not in scope here, so it is undefined, // unless it were declared elsewhere. </code></pre> <p>如果您<em>想要</em>共享一些变量,但不想共享其他变量,请让您的匿名函数使用多种方法的组合:</p> <pre><code>var bobbyS_vars = { title: &#34;Hello World!&#34;; }; (function() { var employeeId = &#34;E 298&#34;; var count = 7; document.write(&#34;&lt;p&gt;&#34; + bobbyS_vars.title + &#34;&lt;/p&gt;&#34;); document.write(&#34;&lt;p&gt;&#34; + employeeId + &#34;&lt;/p&gt;&#34;); })(); // At this point, bobbyS_vars.title is in scope and still has the // value &#34;Hello World!&#34;. Variables employeeId and count are not // in scope and effectively private to the code above. </code></pre> <p>最后一点。您的代码声明的所有函数实际上也是全局变量。因此,如果您创建一个名为 printTitle 的函数,则它 1) 可用于页面上的所有其他代码,并且 2) 可以覆盖同一页面上也名为 printTitle 的另一个函数或被另一个函数覆盖。您可以像保护任何其他变量一样保护和/或公开您的函数:</p> <pre><code>var bobbyS_vars = { }; (function() { // Private functions var function = addOne(i) { return i + 1; }; // Public vars bobbyS_vars.title: &#34;Hello World!&#34;; // Public functions bobbyS_vars.printTitle = function() { document.write(&#34;&lt;p&gt;&#34; + bobbyS_vars.title + &#34;&lt;/p&gt;&#34;); document.write(&#34;&lt;p&gt;&#34; + addOne(41) + &#34;&lt;/p&gt;&#34;); }; })(); // At this point, function addOne is not directly accessible, // but printTitle is. bobbyS_vars.printTitle(); </code></pre> <p>请注意,虽然函数 addOne 实际上是闭包中的私有函数,但仍然可以通过 printTitle 函数间接访问它,因为 addOne 和 printTitle 都在同一范围内。</p> </answer> <answer tick="false" vote="13"> <p><pre><code>title</code></pre> 位于 <pre><code>Global</code></pre> 范围内,对于在 Web 浏览器中运行的 JavaScript,该范围是 <pre><code>window</code></pre> 对象。 当您在限制其范围的任何函数之外说 <pre><code>var title = &#34;Hello World!&#34;</code></pre> 时,它与说 <pre><code>window.title = &#34;Hello World!&#34;</code></pre> 相同。您的代码相当于:</p> <pre><code>&lt;script&gt; window.title = &#34;Hello World!&#34;; &lt;/script&gt; &lt;!-- random HTML/PHP --&gt; &lt;script&gt; document.write(title); // or document.write(window.title) works just as well &lt;/script&gt; </code></pre> </answer> <answer tick="false" vote="6"> <p>它们都将根据范围规则等进行“共享”。除了包含所述文件的顺序之外,单独的文件对此没有影响。</p> <p>编辑:相同的规则也适用于内联脚本。</p> <p>并详细说明例外情况:</p> <p>如果我有文件 Foo,其中声明以下内容:</p> <p><pre><code>var fooVar = barVar;</code></pre></p> <p>然后我有文件 Bar,其中声明以下内容:</p> <p><pre><code>var barVar = &#39;bar&#39;;</code></pre></p> <p>我将它们按以下顺序包括:</p> <pre><code>&lt;script type=&#34;javascript/text&#34; src=&#34;foo.js&#34;&gt;&lt;/script&gt; &lt;script type=&#34;javascript/text&#34; src=&#34;bar.js&#34;&gt;&lt;/script&gt; </code></pre> <p>您将收到一个解释错误,因为 <pre><code>barVar</code></pre> 的使用出现在其声明之前。</p> </answer> <answer tick="false" vote="2"> <p><pre><code>window</code></pre> 保存所有变量。所有脚本都在母<pre><code>window</code></pre>对象中。所以所有变量都在一个空间中。但是,它们可以本地化为函数等。</p> </answer> <answer tick="false" vote="2"> <p>在这种情况下,标题将是一个全局变量。您需要将变量封装在一个范围内。有多种方法可以做到这一点。我的偏好是自动执行的匿名函数,就像这样完成:</p> <pre><code>(function() { var title = &#34;Hello world!&#34;; alert(title); // would pop up &#34;Hello World!&#34; since title is in scope })(); alert(title); // title doesn&#39;t exist, because it&#39;s outside the scope </code></pre> </answer> </body></html>

回答 0 投票 0

IF 语句格式化最佳实践,您的风格是什么?

希望改进我的 IF 语句,并且我想让我的代码看起来很漂亮 这就是我目前正在做的事情,它可读吗,还有改进的空间吗? SomeObject o = LoadSomeObject(); 如果(努...

回答 12 投票 0

调用前检查 vs 使用 bool 参数提前返回?

我和我的同事经常注意到这一点,他们会传递一个布尔参数,只是为了立即返回它的真/假。以A为例。 一个: 公共无效主要() { WorkItem 工作...

回答 1 投票 0

以下两种编码风格哪一种是最佳实践(包括代码规范、执行效率、编译优化)

内部类Demo(AuthorizationHandlerContext上下文) { 公共无效样式1() { if (context.Requirements.FirstOrDefault() 是 IAuthorizationRequirement 要求) { ...

回答 1 投票 0

具有默认构造函数的对象的初始化器列表

将不需要位于初始值设定项列表中的类成员变量放入初始值设定项列表中是否有任何好处?例子: 类 Foo { 民众: 富() {} }; 类酒吧 { 民众: 酒吧...

回答 4 投票 0

TypeScript:更好的实践 - 一个接口还是多个接口?

我想为模型创建一个接口来存储我的 API 响应。 目前我还不知道具体的结构。 是否最好使用一个文件中的所有子对象创建一个 TypeScript 接口,例如莫...

回答 1 投票 0

如何阻止 for 循环出错

子NewThing() 昏暗单元作为范围 对于工作表中的每个单元格(“问题 2”).Range(“B3:B11”).Cells 如果 Cell.Value >= 90000 那么 范围("C3:C11").Val...

回答 1 投票 0

WPF中不指定控件名称...性能影响

如果需要从后台代码访问 WPF 控件,则需要在 XAML 中为其提供 Name 属性。 在许多情况下,您不需要从后面的代码访问控件,因为很多 c...

回答 2 投票 0

测试 int x 是否是给定集合的元素的最优雅的方法? [已关闭]

问题:测试是否 x ∉ { 2, 3, 61, 71 } 我常常想,是否还有比以下更好的方法: if (x!= 2 && x != 3 && x != 61 && x != 71) { // 做事 } 和 if (!新列表&l...

回答 8 投票 0

如何将类分离到.h和.cpp而不需要重写整个parh

当我在头文件中定义一个类时,我必须为每个方法编写完整的路径。我仍然想将它定义为一个类。例如: 啊: A类{ 无效主(); } a.cpp: #include“啊...

回答 1 投票 0

Runtime.getRuntime().gc()有副作用吗[重复]

在Java应用程序中,是否建议显式调用Runtime.getRuntime().gc()来提高性能? 在这种情况下手动触发垃圾收集有哪些潜在的副作用...

回答 3 投票 0

TODO 约定从何而来? [已关闭]

我怀疑这个问题以前已经被问过,但谷歌搜索起来并不容易。 我是一个相当新的编码员,我看到很多代码,用很多不同的语言编写,注释以“TODO”开头。

回答 4 投票 0

JComponents“弹出”其他 JPanel

我一直在尝试寻找与我的类似问题,但无济于事。 我有一个简单的 Java 程序,其中有一个 JLayeredPane 和一个包含三个 JPanel 的 BorderLayout。里面

回答 1 投票 0

MSBuild - 将来自 editorconfig 的警告视为错误(在构建期间强制执行)

我为我的项目设置了一个 .editorconfig 文件,它在我的 IDE 中完美运行并抛出正确的警告。示例:IDE0052(未使用的变量)和 IDE0055(格式错误)。 不过,我会...

回答 1 投票 0

SonarLint for Typescript 中的缩进规则

我是sonarLint规则的新手,我试图找出打字稿规则中的缩进和变量命名规则。但找不到它。 我能够找到类和函数的命名规则......

回答 1 投票 0

私人套餐还是私人会员? [已关闭]

我想知道什么是 C# 最佳实践,带有公共 getter 的私有/受保护成员,还是带有私有/受保护 setter 的公共 getter? 公共 int PublicGetPrivateSetter ...

回答 6 投票 0

哪个更正确,为什么?

哪个实施更好还是没有区别? 1. 公开课 简单 { 公共 IList 条目 { get;私人套装; } 公共简单() { 参赛作品 = 新李...

回答 9 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.