Cam*_*tin 13 c# pinvoke winapi constants naming-conventions
private const int TheAnswer = 42;
Run Code Online (Sandbox Code Playgroud)
但有时我们需要从Windows API中表示已存在的常量.
例如,我不知道如何命名:
/// <summary>
/// With this style turned on for your form,
/// Windows double-buffers the form and all its child controls.
/// </summary>
public const int WS_EX_COMPOSITED = 0x02000000;
Run Code Online (Sandbox Code Playgroud)
我该怎么命名呢?
保持它WS_EX_COMPOSITED
可以让我快速将它与WinAPI相关联,但这是错误的.
一些选择:
WsExComposited
- 太匈牙利人了Composited
- 太短WsEx
enum with Composited
in it - 仍然是匈牙利人ExtendedWindowsStyles.Composited
- 班级常数?枚举?应该指出的是,良好命名的目标是:
Ale*_*kov 15
对于直接与Win API(或任何其他文档化API)接口的部分,WS_EX_COMPOSITED非常适合.您要公开的部分应该遵循标准约定 - 使用单独的公共Facade来调用具有良好方法名称的本机函数(您最终会忘记您对特定标志组合的研究,但是好的包装器方法名称至少会让你用吧).
保持名称尽可能接近本机API的另一个好处是,您可以直接在MSDN /其他文档中搜索常量并立即找到答案.如果你重命名它将会困难得多.