也许最糟糕的命名反模式是:
create table stuff(..., foo1 string, bar1 string,
foo2 string, bar2 string,
foo3 string, bar3 string, ...)
我们有[foo,bar]对的三元素列表。如果需要第四列,则必须向表中添加新列。
导致这样的代码:
'SELECT foo' + i + ', bar' + i + ' FROM stuff'
应该使用foo和bar列创建一个单独的表,并将其链接到东西表:
create table fubar(foo string, bar string, stuff_id long)
第二个最糟糕的情况是:
class Student {
...
String homeStreet;
String homeCity;
String homeState;
String permStreet;
String permCity;
String permState;
...
}
在这里,我们有六个字段,而不是Address类的两个实例。
此反模式由一系列由两部分组成的名称标记,列出了两组的每种组合,例如[foo,bar] x [1,2,3]或[home,perm] x [街道,城市,州]