数据应该描述自己吗?在什么情况下最好是否应该?

时间:2011-02-05 10:30:27

标签: data-structures

我不确定如何轻松地将其置于一个简单的问题中。

我将使用一个例子。

说我正在从服务器向Web浏览器发送一些参数。 Javascript将知道如何处理它。假设它是某个页面元素的设置,可能有4个不同的值。我可以使它成为0-3,或者我可以使它成为“明亮”,“黑暗”,“透明”,“无”。你明白我的意思吗?在一种情况下,数据是描述性的。

现在走出网络开发领域。事实上,远离任何不需要一种方法或另一种方法的编程方面,并考虑一些优先于另一种方法。这意味着,如果以描述性的方式完成所有目标,或者如果以一种神秘的方式完成,则对所有目标都有益。

你能想到一些你想要一个在另一个上面的例子吗?

PS:我可能需要帮助这个人的标签。

2 个答案:

答案 0 :(得分:1)

数字变体的好处是数据量较小。如果您正在通过大量数据进行通信或通过受限带宽通道进行通信,那么这将非常有用。同时比较数字比比较字符串要快得多。

当您需要易于扩展和可维护性时,具有有意义名称的替代方案是有益的。您可以在不使用任何其他转换表的情况下查看该值的含义。您还可以通过定义一些命名规则来启用其他人添加新值。

答案 1 :(得分:0)

使用一种策略优于另一种策略的好处与强类型与弱类型的好处非常相似。像“明亮”,“暗”等的值是强类型的,而0,1,2是弱类型的。

使用强类型数据最重要的好处是1)其他人很容易知道值意味着什么以及如何使用它2)如果你使用的话,你将很快得到一个有意义的语法错误非法价值。

弱键入的好处是您可以引入新值而无需更改中间模块。即你可以在不改变中间模块的情况下引入“4”而不必理解这个值的含义。

我肯定会选择“明亮”,“黑暗”等。

NB!有些人可能认为“明亮”是一个字符串,所以弱键入的方式与“1”相同,但这取决于视角。