代码之家  ›  专栏  ›  技术社区  ›  Matthew Whited

常见的模糊设计实践?[关闭]

  •  -1
  • Matthew Whited  · 技术社区  · 15 年前

    您在设计中看到的模糊人群使用的一些常见做法是什么?我发现在不允许重写的项目上很有趣,而这将是解决问题的更快、最有效的方法。

    6 回复  |  直到 12 年前
        1
  •  3
  •   om252345    15 年前

    我的最爱总是围绕着变量……在不再使用的代码中留下变量,然后给它们所有无意义的名称。当然,如果你真的想混淆的话,你必须小心避免几乎所有的惯例。所以,一个完美的方法是有两个类似的变量,一个名为myvar1,另一个名为myvarone。像这样的东西…

    另一种方法是包括仅在代码中可见的未使用控件。我盯着一个ASP.NET网站看了一个小时,试图弄明白为什么一个formView会掉到它里面去……(没有答案)。

        2
  •  3
  •   sal    14 年前

    我曾经研究过Perl代码,在这里,作者决定让大多数子系统接收一个作为变量的散列,并返回相同的散列,添加或删除数据。基本上,一个全局哈希用于通过不同的代码路径传递数据。

    看起来像这样:

    my $hash = ();
    
    $hash->{'CUSTID'} = 1001;
    $hash = GetAccounts($hash);
    
    if ($hash->{'AccountTotal'} > 100) {
        $hash = getTotals($hash);
        $hash->{'Acct_Sbkt_Marker'} = 'R1';
        $hash->{'Acct_Invr_Marker'} = 'BT';
        $hash = removeInvalidAccount($hash);
    }
    

    直到今天,我还不知道他试图用这个实现什么设计模式。

    我记得 $hash 会很好地排成一行。

        3
  •  1
  •   Brian    15 年前

    我们有一个人在文件夹调用/kensington中处理存储文件,以便“隐藏”它们。它只包含了一些他不想看到的XML文件,并且认为人们不会在其中查找这些文件。

        4
  •  1
  •   Jared    15 年前

    代码中没有或无用的注释,没有有用的文档。

        5
  •  0
  •   northpole    15 年前

    我和一个程序员一起工作,他曾经写过非常复杂的条件,当遇到这种情况时,会调用一个简单地完成一个系统的方法。他在整个应用程序中做了几十次。仍然不确定为什么……

        6
  •  0
  •   Ian Gilham    15 年前

    在那里,我认为设计良好的代码应该独立起来阅读,而不是解密。

    我理解,鼓励关心模糊的人在其他环境中使用dotfuscator及其等效工具。但是,模糊的含义使代码更难反编译,而不仅仅是让工作变得痛苦。

    为什么有人会故意设计可怕的代码(除了演示gotchas之外)是我无法理解的。