首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >语义还是结构-哪个应该得到变量命名的偏好?

语义还是结构-哪个应该得到变量命名的偏好?
EN

Software Engineering用户
提问于 2012-01-23 12:18:48
回答 2查看 525关注 0票数 2

我们的项目中有一个呼叫堆栈。程序是为单片机编写的,语言为C。调用堆栈基本上是一个整数数组。表示此调用堆栈的变量以字符串_stack结尾。

我在审查执行情况。该功能是重置恢复,而不是调用堆栈,但调用堆栈是该功能的一部分。当我第一次看到变量时,我认为它被用作堆栈。所以我假设如下:

  • 不能访问上一项以外的其他条目。
  • 会有推送/POP/CLEAR/TOP操作。

接下来,我发现第一个条目(索引0)总是在特殊情况下检查的。我还找到了一个函数,其中数组的所有元素都按顺序从索引0读取到顶部。它们都是无效的堆栈操作。

我认为变量名不应该包含字符串stack,因为它不是堆栈,而是用作列表。但编码器显示的是有效的逻辑,根据语义意义,它是一个堆栈,实际上是推送操作。

应该用*stack*命名变量吗?

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2012-01-23 12:32:33

在您的例子中,将结构称为list (显然是)和stack (它实际上是用作结构)之间的区别在于System& Apps匈牙利符号之间的争论。

视情况和背景而定,其中一种可能比另一种更合适。一般来说,Apps匈牙利语为读者提供了一个更好的使用基于名称的变量的上下文,而不是系统匈牙利,因此导致了某种程度上的自文档化代码。

票数 4
EN

Software Engineering用户

发布于 2012-01-23 23:58:24

舒赞举起他的杖,在他的僧侣面前挥手。“如果你称它为杖,”他说,“你否认它的永生。如果你不称它为杖,你就否认它现在的事实。告诉我你打算怎么称呼它?”

如果它是堆栈的变体或修饰,我可以称它为堆栈。

但我确实希望有一些评论或文档来解释它所代表的信息,正常的类似堆栈的操作意味着什么,以及为什么有必要让其他不遵守堆栈规则的操作。

票数 4
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/131362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档