【问题标题】:What programming language (and IDE) is better suited for the refactoring Gilded Rose problem? [closed]哪种编程语言(和 IDE)更适合重构镀金玫瑰问题? [关闭]
【发布时间】:2020-06-19 19:42:37
【问题描述】:

我想用镀金玫瑰问题挑战自己。对于不熟悉这个受欢迎的面试任务的人,Brad Cypert 在他的一篇博文中给出了一些提示和一般性介绍。你可以找到它here

一般来说,重构是一个问题,您应该通过对一段(蹩脚的)遗留代码进行操作来实现附加功能来满足某些要求。

大多数流行语言都可以应对这一挑战,我认为语言和 IDE 之间的组合(用于重构目的)对于区分出色的解决方案和 OK 解决方案至关重要。我正在考虑结合 IntelliJ,因为我有使用它的经验,并且我认为它非常适合重构和 Java,因为它是我更熟悉的语言之一。但是,任何其他建议都非常受欢迎,我很乐意尝试和试验新的语言和工具。

最后,我想知道是否有人可以根据过去有关此问题的经验提供任何指导或更详细的提示。

【问题讨论】:

  • 如果编写的原始代码是 C++,那么最好的语言就是 C++。如果它是用 Java 编写的,那么最好的语言就是 Java。重构与你使用什么IDE无关
  • 我从来没有做过这个挑战,但是我可以说我经常使用 IntelliJ 来重构低质量的代码库,它很棒。
  • 我认为原版是用 C# 编写的,但它天生就考虑到了多语言方法。所以我认为挑战的一部分涉及为这类任务选择最有效的语言。这是官方repository
  • @chriptus13 我已经在之前的评论中链接了存储库。我知道这一点,我只是想知道什么是好的选择,什么不是好的选择。
  • @GYBE 那么你不是在重构代码,而是在重写它。这是两个完全不同的东西。

标签: java intellij-idea architecture refactoring


【解决方案1】:

您可以选择任何您熟悉的语言和 IDE。

镀金玫瑰问题是错误代码的一个例子。您可以使用此代码训练重构。重构不仅是 IDE 可以直接支持的。通常你也应该考虑一下代码,如果有什么可以用更简单的方式表达的话。

这并不取决于语言,根据 Nikolaus Wirth(PASCAL 的发明者)的说法:“一个糟糕的程序员可以用任何语言编写糟糕的代码。”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-17
    • 2011-01-13
    • 2010-09-16
    • 2014-07-30
    • 2013-02-08
    • 1970-01-01
    相关资源
    最近更新 更多