0

命名事物是困难的。在命名我的类、变量和方法时,我努力避免与我的语言(MSSQL、VB.NET 或 C#、HTML、CSS、jQuery)和框架 (.NET) 中的保留字或关键字发生冲突。

我经常犯错误,直到为时已晚,无法轻松返回并重命名时才意识到。

一个场景:(1) 首先创建一个数据库模式,然后 (2) 意识到表或列名对于 C#/.NET 对象来说不是一个好的选择。

你使用什么技术?

4

8 回答 8

14

一个不错的IDE...

于 2009-12-10T00:22:33.767 回答
6

如果您使用的是Visual StudioSQL Server Management Studio,那么它们会以不同颜色突出显示保留关键字。

如果您确实需要,某些语言具有使用保留关键字的特殊语法,但实际上并不推荐。例如,在 C# 中,您可以使用at 符号作为前缀,例如

var @class = "Hello";

或者在 SQL Server 中,您可以使用方括号:

SELECT [where] from Locations;
于 2009-12-10T00:26:41.700 回答
3

几乎任何编辑器和 IDE 都会自动以适当的(与其他符号对比)颜色突出显示关键字,前提是它知道您正在编辑的代码的语言语法。

如果您无法使用这项技术,就像过去一样,最好的办法是记住所有关键字,并随身携带一份备忘单。但是,真的,你的编辑应该这样做。

于 2009-12-10T00:25:15.213 回答
2

即使在较大的项目中,我也从未遇到过这个问题。我遵循一些标准约定,例如在变量名称前加上它们的类型。我还利用命名空间来确保获得我想要的确切对象/方法。老实说,我看不出在命名未保留的事物时困难在哪里。

于 2009-12-10T00:25:05.773 回答
2

我真的很少遇到与关键字冲突的问题:如果您将列表命名为 List,那么,您应该被它所困扰,因为您应该使用更有意义的变量名......

当然,如果你正在构建一个编译器并且你实际上需要一个Class类,那么这一点就没有意义了……但这种情况很少见。

在几乎所有其他情况下,没有意义List list,何时List itemsList tokens有意义。

于 2009-12-10T00:46:26.513 回答
1

去更清楚。

C# 示例

班级

css类

SQL Server 示例

更新

执行更新

于 2009-12-10T00:25:23.950 回答
1

IDE 可以提供帮助。

一个好方法就是学习你正在使用的语言的语法。通常,您可以找到语言的保留关键字列表。

定期测试 JavaScript 等动态语言会很快发现关键字问题。(因为我还没有让 eclipse 与 javascript 一起工作)。

于 2009-12-10T00:29:38.840 回答
1

使用结构化编程!

这意味着不同范围内的变量应该只存在并且只与该范围相关。当你想使用一个全局变量时,明确地这样做。

如果程序的区域不能分割成函数,那么将区域分割成类。这样,AreaX->ID 不会与 AreaY->ID 发生冲突。类也可以绕过一些保留字。

对于一些保留字,您只需要尽量避免使用通用名称。我知道 $HOME 在 PHP 中特别危险。

于 2009-12-10T19:56:07.500 回答