【问题标题】:Workflow for interim codings临时编码的工作流程
【发布时间】:2014-08-25 13:44:14
【问题描述】:

如果软件的两个组件(Foo 和 Bar)中 Foo 的 method signature 更改,我们使用 @deprecated 来指责旧方法并保持 Foo 和 Bar 之间的兼容性。

问题: XML-Configuration 以及 CSS,HTML,JSP ... 没有这样的 Annotation,实际上我们在 Eclipse 中使用 TODO 作为 Marker。问题是它是我们分发的代码的一部分!

解决方法: 在 JIRA(+svn-plugin) 中,我们将代码行归咎于 cmets(这也是不好的做法)。

问题:

  1. 有更好的解决方案吗?
  2. 是否有解决方案可以管理删除此仅兼容代码的冲动。

【问题讨论】:

  • 最佳解决方案是以您不需要“仅兼容代码”的方式更改您的进度。在您的情况下,这意味着对两个组件进行必要的更改并将它们一起发布。
  • 为什么是-1? @AndréStannek 如果其中一个组件是 3rd 方库怎么办?
  • -1 不是我。如果您可以自己更改它,那它就不是真正的第 3 方。如果您无法更改它并适合您使用的 API,那么它不是您提到的那种“仅兼容代码”。只是一个疯狂的猜测,但在这种情况下,适配器模式可能会帮助您保持代码分离。
  • 你在第三部分库中使用我的 jsp、html、css 我不需要关心兼容性吗?告诉我如何在 css/html/jsp 中制作适配器模式!
  • 我以前从未做过这样的事情。我仍然觉得这是一个奇怪的要求。我认为如果不深入了解您的项目,很难理解。

标签: java javascript html css jira


【解决方案1】:

如果我理解正确,您不希望在分布式文本文件(非编译的 XML、HTML、...)中使用 TODO 标记。

我会编写一个小的 Groovy* 脚本来删除所有那些 TODO 标记(但不会改变文件的语义)。这可以集成到您的构建过程中,以便分布式代码不包含任何 TODO 标记,但这些标记仍在 SVN 中,您可以在之后使新产品兼容时删除它们。

*或者你喜欢的任何脚本语言

【讨论】:

    【解决方案2】:

    MyLin 将来可能会支持书签和任务...

    http://www.eclipse.org/forums/index.php/t/245439/

    【讨论】:

      【解决方案3】:

      如果我的理解正确,问题是从最终发行版中删除“开发人员说明”(关于弃用作为其中的一部分)。解决方案是使用一些预处理器,在编译和打包最终版本之前将它们从资源和代码中剥离。 这是此类预处理器的一个很好的示例: http://code.google.com/p/java-comment-preprocessor/ 它可以在任何构建系统或独立系统中轻松使用。

      【讨论】:

      • 不,解决方法是删除开发人员注释。我正在寻找一种解决方案,我可能不需要开发人员注释 incode。就像 jira 中的按钮“所有临时编码已被删除”。
      • 对不起,我使用 Atlassian Jira 多年但不知道这样的按钮。你能简单描述一下吗?
      猜你喜欢
      • 1970-01-01
      • 2022-12-11
      • 2010-12-07
      • 2012-11-16
      • 1970-01-01
      • 2020-07-24
      • 1970-01-01
      • 2022-11-30
      • 2012-01-10
      相关资源
      最近更新 更多