1

这可能不是问这个问题的理想场所,但我真的走入了死胡同,不知道在哪里可以问(建议将不胜感激)。

我正在尝试为我公司的 C 库的 4 个新 API 命名。

这些 API 被添加到现有集合中,因此它们必须匹配已经制作的模式,这限制了我的选择。

所有 API(现有的和新的)所做的是允许用户获取/设置程序中使用的值字符串或非字符串变量。

我的不同之处在于它们允许您使用变量的名称获取值,与现有方法相反。

这是我目前拥有的:

VariableGetValueString
VariableSetValueString
VariableGetValue
VariableSetValue

唯一的问题是它没有明确说明它使用了变量的名称。我想不出一个简洁的名称可以让客户清楚地知道这一点。

最好不要从名称中删除任何内容,因为它与其他 API 的模式相匹配(这些 API 没有在名称中明确说明它们的检索方法,尽管出于无关的原因应该这样做)。

感谢您提供任何帮助,尽管我知道没有明确的答案,但我显然会接受最适合的答案。

再次抱歉,如果这是一个糟糕的地方问这个问题,我会喜欢一个更合适的地方的建议,如果有的话。

编辑:

一些现有的 API 名称是:

VariableGetTaskString
VariableGetTask
VariableGetGlobalString
VariableGetGlobal

沿着这些思路。 TaskGlobal引用变量的范围。一开始它们的名字就不是很好,这让我的工作变得更加困难,但它们无法更改,因为客户已经习惯了它们,而且这些更改会破坏旧程序。我最初没有包括这些,因为它们提供的帮助很少(在我看来)。

每个 API 的参数将使客户清楚每个 API 的作用,但最好是名称也能做到这一点。感谢您的反馈意见。

编辑2:

以下是调用 API 的示例:

if(!VariableGetValueString(Handle handle, LPCSTR variableName, TaskID taskID, LPSRT value, DWORD bufferSizeinBytes)
{
    //retrieve failed.
}

if(!VariableGetValue(Handle handle, LPCSTR variableName, TaskID taskID, PDWORD value)
{
    //retrieve failed.
}

希望那足够清楚。随时要求更多,我会整天编辑这个。感谢您一直以来的支持。

4

3 回答 3

1

以下是一些可能性:

建议一

UseVariableNameToGetTaskString(...);
UseVariableNameToGetTask(...);
UseVariableNameGetGlobalString(...);
UseVariableNameToGetGlobal(...);

建议二

VariableGetTaskStringByVarName(...);
VariableGetTaskByVarName(...);
VariableGetGlobalStringByVarName(...);
VariableGetGlobalByVarName(...);

建议3

VariableGetTaskStringByName(...);
VariableGetTaskByName(...);
VariableGetGlobalStringByName(...);
VariableGetGlobalByName(...);
于 2013-08-02T02:23:10.217 回答
1

怎么样:

NamedVariableGetValueString
NamedVariableSetValueString
NamedVariableGetValue
NamedVariableSetValue

因此区别NamedVariable意味着由名称指定的变量,而仅Variable意味着由 ID 或旧函数使用的任何变量。

于 2013-08-02T00:54:04.920 回答
0

怎么样:

getVariableName()

setVariableName(char* value)

于 2013-08-01T21:51:27.670 回答