圣诞大减价开始了!

原始的痴迷

迹象和症状

  • 使用原语而不是小对象来完成简单任务(例如货币、范围、电话号码的特殊字符串等)。

  • 使用常量来编码信息(例如常量)User_admin_role = 1指具有管理员权限的用户。)

  • 在数据数组中使用字符串常量作为字段名。

问题的原因

像大多数其他气味一样,原始的迷恋是在软弱的时候产生的。“只是一个存储数据的字段!”程序员说。创建一个基本字段要比创建一个全新的类容易得多,对吧?事情就这样完成了。然后需要另一个字段,并以同样的方式添加。你瞧,这个班级变得庞大而笨重。

原语通常用于“模拟”类型。因此,您使用的不是单独的数据类型,而是一组数字或字符串,它们构成了某些实体的允许值列表。然后通过常量给这些特定的数字和字符串起简单易懂的名字,这就是为什么它们被广泛传播的原因。

另一个蹩脚的原语使用例子是现场模拟。该类包含大量不同的数据,字符串常量(在类中指定)用作获取这些数据的数组下标。

治疗

回报

  • 由于使用对象而不是原语,代码变得更加灵活。

  • 更好的代码可理解性和组织。对特定数据的操作在同一位置,而不是分散。不用再猜测所有这些奇怪的常量的原因,以及它们为什么在数组中。

  • 更容易找到重复的代码。

Baidu
map