【问题标题】:Should I make Linux Shell Script or Java program?我应该制作 Linux Shell 脚本还是 Java 程序?
【发布时间】:2009-08-22 10:41:00
【问题描述】:

我需要为 SQL 生成多个数据库,所以我需要脚本/程序来自动生成这些到 SQL 并生成文件到 jboss 服务器。我们的客户端服务器在 Linux 中运行,但我在 Windows 机器上开发。我应该用 Linux 脚本编写脚本还是编写可以做同样事情的 Java 程序?

【问题讨论】:

  • 是你生成的表吗?

标签: java sql linux shell


【解决方案1】:

shell 脚本通常会更容易和更快地开发。

如果您需要一个健壮的、用户就绪的应用程序,请编写一个 Java 应用程序。这不是这里的情况,所以让你的生活轻松一点。

【讨论】:

    【解决方案2】:

    除非它非常简单,否则做起来不会那么痛苦 爪哇。所以我认为你应该写一个Java程序。

    但是您是否考虑过用 Perl 或 Python 编写它?这些 是非常强大的脚本语言,因此 程序可以比一个程序更短和/或更简洁 对应的Java程序。

    【讨论】:

    • Perl 的 +1 — 可能值得用 SQL::Translator 看看它
    【解决方案3】:

    我经常将 shell 脚本用于一次性任务,例如生成大量测试数据。

    【讨论】:

      【解决方案4】:

      Linux shell 脚本语言可以轻松快速地为简单的事情进行开发。它们很容易维护,因为它们是纯文本,由 shell 解释。

      它们很难用于比几十行代码更复杂的事情。它们不是正确的编程语言。如果您有任何文本替换或大小计算,则很难编写。

      如果您只进行目录创建和文件复制,请使用 shell 脚本。

      Java 程序很难开发,因为它们需要编译(可能还需要一个完整的 IDE)。它们很难维护,因为它们是编译的。您可以使用属性来增强可维护性,但这需要更多的编程。

      Java 程序非常适合处理复杂的事情。如果您有大量的文本替换或计算,Java 效果会更好。 Java 是一门合适的语言,具有很多功能,可以做很多事情。

      您有一个中间立场:脚本的灵活性,完整的编程语言的复杂性。 GroovyPython 之类的工具是 “动态”语言——它们非常容易编写和维护——但它们也是完整的编程语言,而不仅仅是 shell。

      如果您的脚本涉及任何文本操作或计算,您可能需要考虑使用 Groovy 或 Python,而不是 shell 或 Java。

      【讨论】:

        【解决方案5】:

        当心你构建的东西,因为它的使用寿命比你想象的要长。

        如果以任何一种方式编写代码的工作量大致相同,则使用您的组织最广泛使用的语言编写代码。

        我在公司反复看到的一件事是“哇,我可以使用带有 Frammoplatzes 的闪亮的新(或闪亮的旧)技术 BZUP12G 进行编码”。这对开发团队的其他成员不利,他们现在必须通过 Frammoplatzes 学习 BZUP12G 才能修改构建的内容。努力将用于构建应用程序的基本技术集保持在相当小的范围内是一个非常好的主意。

        【讨论】:

          猜你喜欢
          • 2010-12-15
          • 2012-05-12
          • 2015-12-24
          • 1970-01-01
          • 2012-04-15
          • 2011-09-08
          • 1970-01-01
          • 1970-01-01
          • 2014-09-22
          相关资源
          最近更新 更多