【问题标题】:Famous eponymous programming techniques [closed]著名的同名编程技术[关闭]
【发布时间】:2011-01-22 23:09:10
【问题描述】:

在某些运动中,某些技术或元素以发明或首次执行它们的运动员的名字命名,例如,Biellmann spin

他们是否广泛使用这些名称来表示编程技术和习语?这些是什么?需要明确的是,我明确不是在询问算法,这些算法通常以其创造者的名字命名。

例如,一个是Schwartzian transform,但我想不起来了。

【问题讨论】:

  • 必须...压制...敦促...编造关于一个叫做Septimus Q Object的人的奇特故事...
  • 您要查找的词是“同名”。
  • 投票重新开放...人们在这里遇到了严重的问题。这是一个非常明确的问题,我认为有很多技术不是可能符合条件的算法。老实说,一旦你赋予人们一点点权力,他们就会滥用它。投票重新开放。
  • WizardOfOdds,Alicia:投票重新开放,但它可能应该成为维基,因为没有具体的正确答案。
  • 记住:德国巧克力蛋糕是以一个名叫 German 的人命名的。 B-)

标签: terminology idioms


【解决方案1】:

在 C++ 中,Barton-Nackman trick

【讨论】:

    【解决方案2】:

    怎么样:Ada 以第一位计算机程序员 Ada Lovelace 的名字命名??

    【讨论】:

    • 真的不算技术,抱歉。
    • 另外,不是 Lovelace 发明的..
    【解决方案3】:

    我认为timsort 符合条件。在python中使用并打开jdk 7

    【讨论】:

    • 但那是一种算法,不是吗?
    • 别忘了 QuickSort 是以一个叫 Quick 和 BubbleSort 的家伙命名的,它是以迈克尔杰克逊的猩猩命名的:-)
    【解决方案4】:

    Edsger Dijkstra 的A Discipline of Programming 一书中阐述的通过计算最弱前提来构造程序的方法通常被称为Dijkstra 方法。它更像是一种编程方法而不是一种技术,但它可能是合格的。

    【讨论】:

      【解决方案5】:

      在标准 ML 和其他使用元组和记录文字的函数式编程语言中,我有时会看到这样写的文字:

      ( first
      , second
      , third
      )
      

      { name = "Atwood"
      , age = 37
      , position = "founder"
      , reports_to = NONE
      }
      

      这种高度惯用的布局,与逗号或分号出现在行的 end 的布局相反,我一直听说它被称为 MacQueen 样式,以 Dave MacQueen(前身为贝尔实验室,现就职于芝加哥大学)命名。

      【讨论】:

      • 我喜欢在我的非功能性程序中使用相同的样式 - 对我来说,逗号行提供了像缩进条一样的视觉提示;多余或缺少的逗号会立即变得明显。
      • @Norman - 这是一种在所有语言中使用非常广泛的样式(不仅适用于逗号),而且我认识的大多数优秀开发人员都使用它,因为它可以更容易地维护代码。然而,我从来没有意识到它有一个名字 - 谢谢!
      【解决方案6】:

      如果发现请编辑添加更多...

      【讨论】:

      • 嗯...我不确定它是否适合作为一种技术,但我几乎可以肯定它确实...+1
      【解决方案7】:

      几个hard to fix or unusual software bugs已被归类为著名科学家。 Heisenbug 可能是最著名的例子。

      【讨论】:

      【解决方案8】:

      Carmack's Reverse:

      深度失败

      大约在 2000 年,一些人发现通过反转深度可以使海德曼的方法适用于所有相机位置。与其计算物体表面前面的阴影表面,不如计算它后面的表面,结果相同。这解决了眼睛在阴影中的问题,因为眼睛和物体之间的阴影体积不计算在内,但引入了阴影体积后端必须加盖的条件,否则阴影最终会丢失体积指向的地方倒退到无穷大。

      1. 禁用对深度和颜色缓冲区的写入。
      2. 使用正面剔除。
      3. 将模板操作设置为在深度失败时递增(仅计算对象后面的阴影)。
      4. 渲染阴影体积。
      5. 使用背面剔除。
      6. 将模板操作设置为在深度失败时递减。
      7. 渲染阴影体积。

      对于模板缓冲区的精度,深度失败方法与深度传递方法具有相同的考虑。此外,与深度传递类似,它有时也称为 z-fail 方法。

      William Bilodeau 和 Michael Songy 于 1998 年 10 月发现了这项技术,并于 19991 在 Creative Labs 开发人员会议 Creativity 上介绍了该技术。 Sim Dietrich 在 1999 年的 Creative Labs 开发者论坛上介绍了这种技术 [2]。几个月后,William Bilodeau 和 Michael Songy 于同年提交了该技术的美国专利申请,美国专利 6384822,题为“Method for rendering shadows using a shadow volume and a stencil buffer”,于 2002 年发布。 id Software 的 John Carmack 2000 年在 Doom 3 [3] 的开发过程中独立发现了该算法。由于他向广大公众宣传了这项技术,因此它通常被称为 Carmack's Reverse。

      【讨论】:

      • 除了 Bilodeau 和 Songy 击败他两年。我想不出卡马克实际上发明了(而不是实现)
      • @Michael Stum:+1 因为你得到了 Carmack 的 Reverse 正确...我的回答得到了 +12 的赞成票,我的名字是对的,但我的记忆对我起了作用,因为我描述了其他东西:)
      【解决方案9】:

      ADL - Argument Dependent Lookup 也称为 Koenig 查找(在 Andrew Koenig 之后,尽管我认为他并不欣赏它,因为它并没有按照他最初的计划进行)

      异常保证通常称为亚伯拉罕保证 (Dave Abrahams),请参阅 (http://en.wikipedia.org/wiki/Abrahams_guarantees)

      Liskov 替换原则http://en.wikipedia.org/wiki/Liskov_substitution_principle - Barabara Liskov

      【讨论】:

        【解决方案10】:

        也许Hungarian notation 可能符合条件?它是由Charles Simonyi(匈牙利人)发明的。

        【讨论】:

        • 不,只有当它是由一个叫匈牙利人的人发明时才重要,比如德国巧克力蛋糕 B-)
        【解决方案11】:

        贝叶斯相关的东西怎么样:贝叶斯过滤、贝叶斯推理、贝叶斯分类。虽然植根于统计数据,但这些技术已在大量与编程相关的应用程序中找到了自己的方式。

        【讨论】:

          【解决方案12】:

          K&R(Kernighan 和 Ritchie)和 Allman 缩进样式。

          【讨论】:

            【解决方案13】:

            在 C++ 中,Schwartz counter(又名 Nifty Counter)习语用于防止共享资源的多个静态初始化。它以 AT&T 的 C++ iostream 的原始创建者 Jerry Schwartz 的名字命名。

            【讨论】:

              【解决方案14】:

              Boyer-Moore字符串搜索算法:它可以通过少于N次操作在长度为N的字符串中找到一个字符串。

              【讨论】:

                【解决方案15】:

                BWT (Burroughs Wheeler Transform) 在数据压缩中非常重要。

                【讨论】:

                  【解决方案16】:

                  看到还没有人提及HindleyMilnerType Inference,我感到非常震惊。

                  【讨论】:

                    【解决方案17】:

                    我很震惊没有人提到Backus–Naur Form (BNF),以John BackusPeter Naur命名。

                    【讨论】:

                      【解决方案18】:

                      【讨论】:

                        猜你喜欢
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2012-01-20
                        • 1970-01-01
                        • 2015-01-08
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        相关资源
                        最近更新 更多