问题标签 [naming]

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 投票
1 回答
38683 浏览

tsql - T-SQL 列名中允许使用哪些特殊字符?

我想知道在 T-SQL、MSSQL 的列名中允许使用哪些特殊字符。所以我知道我可以使用字母和数字,但其他字符是否可用不使用方括号 [] 来引用此列?

0 投票
3 回答
182 浏览

variables - 使用基于 UI 的程序结构的任何成功?

您是否曾经根据您的用户界面部分构建您的源代码?例如,如果您的 UI 包含:

  1. 用于显示一些属性的 GridView
  2. 3D 渲染面板
  3. 用于选择活动工具的面板

,然后您或多或少地按以下方式命名和分组您的变量和函数:

您对此有何看法?这种架构可以长期工作吗?

PS。尽管此解决方案可能会让您想起 Front-ahead-design 愚人节的笑话http://thedailywtf.com/Articles/FrontAhead-Design.aspx我的问题是严肃的。

编辑

半年以来一直在维护和扩展这种代码。应用程序在主 .cs 文件中已增长到 3000 多行,大约 2000 行分散到较小的文件中(包含通用帮助函数和类)。代码的许多部分应该被概括并从主文件中取出,我一直在努力,但最终这并不重要。代码的结构和细分非常简单,通过它很容易导航。由于 UI 包含的主要组件少于 7 个,因此将整个设计一次融入您的脑海中没有问题。回到这段代码总是令人愉快的(在一些休息之后)并立即知道从哪里开始。

我想这个巨大的类似程序的结构在我的案例中起作用的原因之一是 c# 中 UI 编程的类似事件的性质。在大多数情况下,这些代码所做的就是实现不同类型的事件,这些事件确实特定于这个项目。尽管某些事件函数会立即变成几页长的怪物,但事件处理程序之间的耦合并不是那么紧密,因此之后重构和压缩它们变得更容易。这就是为什么我故意将泛化和重构留到以后,当其他项目开始需要该项目使用的相同部分的实现时。

PS 可以浏览 3000 行代码,我在 Visual Studio 中使用 FindNextSelection- 和 FindPrevSelection-macros。左键单击某个变量后,我按 F4 跳转到它的下一个实例,按 F2 跳转到前一个实例。也可以选择变量名称的一部分并在部分名称匹配之间跳转。如果没有这些捷径,我很早就会迷失方向:)

0 投票
5 回答
1225 浏览

c# - 帮我命名这个属性(C#)

想象一下我创建了这个类:

在 Visual Studio 中不难看出哪个“Brush”是类,哪个是属性。但是有件事告诉我,以属性的类命名并不是最佳实践。你会如何命名这个属性?

更新关于命名的另一个问题:你如何命名数组?用复数还是用单数?

0 投票
6 回答
218 浏览

php - 关于组织课程和命名课程的问题

我正在编写一组类:RAR、ZIP 和 Trip。它们都有一个共同的兴趣:它们是存档格式。所以,我最初考虑这样做:

1)编写一个基础抽象类

并将其放在“libraries/archive/archive.php”中。

2)编写zip、rar和trip类

并将它们放在“libraries/archive/zip.php”

3)像这样访问特定的类(例如Zip)

这是我最初的方法。但是,您认为这是一个好方法吗?我是否应该首先抽象它们?仅编写“libraries/zip.php”文件(以及所有其他文件)的优缺点是什么?

你对我的方法有什么建议或论据吗?我做了什么坏事吗?

0 投票
4 回答
266 浏览

php - 在评论中标注方法的首选方式是什么?

有时评论时必须参考另一种方法。这是PHP中的一些示例:

那么如果bar类中有一个非静态方法B呢?在评论中命名其他方法的最佳方式是什么?

编辑

PHP 手册似乎mysqli->affected_rowsPDO::beginTransaction. 但它不包含方法名称后的括号。这里的利弊是什么?我的意思是很明显,一个方法后面跟着括号,那么为什么不把它们排除在外呢?

提前谢谢!

0 投票
13 回答
27797 浏览

java - Java构造函数和简单setter中参数命名的最佳实践

对于简单的构造函数和设置器, Java中的参数是否有标准的可接受约定?

我已经看到了 C++ 的答案,但是两个社区之间的做法通常不同)

假设我有一个带有 foo 字段的 C 类。

我经常看到以下三个选项:

1)使用带下划线的实际字段名称:

2)使用实际的字段名称,只需在设置中使用“this”:

3)完全不一致的事情,例如:

我倾向于使用 2,但我想知道正确的做法是什么。

0 投票
7 回答
2347 浏览

sql-server - 我应该使用 SQL Server 关键字作为列名吗?

我正在设计一个数据库,最近在表 DayOfWeek 中命名了一个列,完全忘记了 DayOfWeek 是 SQL Server 中的内置函数。现在我决定是否应该保持原样并使用方括号 [DayOfWeek] 引用列,或者更改列名以避免将来发生任何冲突。我对这个项目并不太了解,所以改变它并不难。我脑海中的争论是 DayOfWeek 的列名对其目的非常有意义,所以我真的很想使用它......但它是一个保留字......并且可能会在未来引起痛苦(特别是如果引用该列时,我总是必须在其周围加上方括号)。

大家怎么看?

0 投票
6 回答
2003 浏览

multithreading - 为什么方法 java.lang.Thread.join() 是这样命名的?

有谁知道为什么 java.lang.Thread 的 join() 成员方法被这样命名?它的javadoc是:

等待这个线程死掉。

当在某个线程上调用 join 时,调用线程正在等待另一个线程死亡并继续执行。据说调用线程也会死掉,但仍然不清楚作者为什么使用这个名称。

0 投票
2 回答
374 浏览

naming - 通用应用程序构建块的类名

你是否厌倦了老旧的 Manager 和 Handler 类?使用了所有 ...Thing、...Dingus、Doodad、...Entity、...Gizmo 或 ...Object 后缀?我当然是并且做到了。

所以在这里我想收集有用的类名。

我认为这篇文章描述得最好:

不要在类型名称中使用“Manager”或“Helper”或其他空词。

如果您需要在类型名称中添加“Helper”的“Manager”,则该类型要么命名不当,要么设计不当。很可能是后者。类型应该管理和帮助自己。

所以这里是前几个:

  • 邮箱
    • 处理消息
  • 信使
    • 提供通知或其他类型的消息
  • 仪表板
    • 呈现数据
  • 渲染器
    • 聚合/构建数据

我不确定在哪里放置“小部件”好还是坏?此外,我目前正在搜索以下类的名称:

  • 使用服务器进行身份验证(Bouncer?)
  • 跟踪数据的变化
  • 持有并跟踪文件
  • 管理对话
0 投票
1 回答
162 浏览

c# - 在异步编程模型中使用什么是好的命名指南?

我正在对一段代码进行一些重构,以将所有阻塞操作转换为异步操作。我的代码在 C# 中,并且正在执行 UPnP 查询,然后是 HTTP 查询。为此,我使用了 UdpClient 和 WebClient 的 APM 方法(BeginReceive 等)。

我的单一方法现在是一系列 Call_1 -> Callback_1 -> Call_2 -> Callback_2 等等。

有人可以指出一些关于在这种情况下应该给方法命名的指导方针,知道除了 Call_1 之外的所有东西都不是我的类接口的一部分。Callback_1、Call_2 等方法实际上只是取消同步工作流的副作用。你会使用什么命名法?

使用 CCR,一切都将保留在一个使用 yield 关键字的漂亮方法中,但不幸的是,我现在不会使用 CCR。