【问题标题】:Going for an scripting language from C world从 C 世界中寻找脚本语言
【发布时间】:2010-02-08 00:39:19
【问题描述】:

我来自 C-Java-C# 世界...括号是 VIP 公民,类型受到每个人的喜爱 :)

有时我需要开发一些代码来自动化重复性任务、转换一些复杂的框架、订购输入文件、向服务器发送程序请求......你知道我的意思吗?

但有时我想知道用 Python 之类的语言编写相同的代码有多容易......或者这些 DoItSimple 语言:) - 恕我直言。

那么我应该使用哪种语言来完成这类任务?

非常感谢您!

【问题讨论】:

  • 一些脚本语言,是吗?您可能想重新标记这个问题,“新”似乎相当模棱两可。
  • 哈哈哈是的......我只是想它。谢谢:)
  • “你知道我的意思吗?我们这些极客......-如果你符合条件,请大声朗读-”?这如何澄清或集中问题?您可能可以将其编辑出来,问题将是相同的。
  • 哈哈哈是的,你是对的,谢谢:)

标签: c programming-languages recommendation-engine scripting-language


【解决方案1】:

您应该真正研究一种更流行的脚本语言,例如 Python/Ruby/Perl。其中任何一个都会让你为你想要实现的目标做好准备。您应该使用哪一个是围绕水冷却器(或者更有可能是咖啡机)引起激烈争论的问题。

也就是说,对于像 'awk' 和 'sed' 这样的学习工具,还有一些要说的,更不用说 'vim' 中用于完成日常任务的一些扩展功能了

【讨论】:

  • 感谢 AlBlue。 “脚本”这个词对于线程来说有多有价值:D +1 我将听取您的建议,以了解更多有关工具的信息。尽管如此,您向我推荐哪种脚本语言?再次感谢:) SD
【解决方案2】:

在很长一段时间内,您总是会更快地使用您所知道的语言。但是,如果您只是想体验新事物并最终拥有另一个有用的工具,我会尝试使用 python。它非常方便,与 C# 世界相差不远(如果您曾经使用过 BASIC,感觉非常相似)。

BTW - AlBlue 对 awk/sed/vim(macros/etc) 的建议是 A+。我经常会在工作中跳到一个 Linux 机器上来处理任何重复的文件任务(在 Windows 上你可以得到 cygwin,我们只是在工作中没有它)。

【讨论】:

  • 是的,我完全同意 AlBlue :) 感谢您的建议
  • +1:Python 运行良好。在你完成 Python 学习之前,你会发现它的开发“更慢”。此外,您可以直接从 Python 调用您的 C 代码。您需要编写一些代码来将现有的 C 库包装为 Python 模块。
【解决方案3】:

我喜欢 PHP 和 perl 的这些东西(大部分是从 sed 和 awk 发展而来的),但如果不排除 bash shell(我在 Windows 系统上使用 Cygwin),甚至是 Windows 脚本语言(是的,批处理文件仍然存在)可以做的比我想象的要多。

【讨论】:

  • 哈哈哈是的,当然:)。他们来这里是为了某事,不是吗? :P 非常感谢詹姆斯 :)
  • +1 用于 PHP,如果你问我的话,它是优秀的快速和肮脏的脚本语言 :).. 更不用说它的语法与 C 相似。
【解决方案4】:

您为什么不列出您认为有吸引力的语言并编写一些小段代码。然后你就可以选择“你的”了。

【讨论】:

    【解决方案5】:

    我说 Ruby 或 Python


    我最喜欢的是 Ruby,因为它具有高纯度的对象模型以及通常很棒的语法和强大的功能。

    但是,Python 具有相同的通用功能,并且流行度大约是后者的两倍。

    传统上,Perl 用于系统管理自动化和其他脚本任务,显然还有 sed、awk 和 sh。

    但是像 Perl 和 PHP 这样的语言最初是作为临时脚本解释器的,而 Python 和 Ruby 是真正的面向对象语言。 Perl 和 PHP 已经发展了面向对象的修订版,但现在它们具有第一个“不错的尝试”的所有复杂性以及“哦,我们应该让它成为一种真正的语言”扩展。

    尤其是 Ruby,是一位真正的语言设计师的产品,他将 Smalltalk 的超纯对象模型与 Perl 的大众化语法相结合。

    【讨论】:

    • 谢谢罗斯。我还没有看到比较的那一面——一些候选人作为临时脚本解释器。 :)
    【解决方案6】:

    如果你来自 C 世界,我会说 Lua,因为 Lua 不仅是一种优秀的脚本语言,而且它还带有一个超级 API 可以将它绑定到 C 程序,这意味着从长远来看你将能够使用相同的技术编写 C 程序脚本。

    Lua 也有自己的优点;我写了elsewhere 写了为什么我更喜欢 Lua 而不是 Python。

    【讨论】:

      【解决方案7】:

      谷歌搜索诸如“perl vs ruby​​ vs python”或“最佳通用脚本语言”之类的东西......你应该找到一些比较。我个人最喜欢 ruby​​,因为它在所有变量前面都没有讨厌的 $。如果您熟悉 c# 和 .net 框架,IronRuby 和 IronPython 可以让您访问您已经知道的所有类。

      【讨论】:

      • 是的 ruby​​ 语法看起来不错:)
      【解决方案8】:

      我可能会因为推荐这个而被否决,但我建议从“writing C in Perl”开始,并朝着适合您的任何惯用 Perl 级别努力(或不努力)。

      我建议这样做的原因是,即使您的 Perl 代码的结构很像 C,并且即使您没有充分利用 Perl 的所有语法糖,您仍然会看到生产力的提高。从 C 风格的 Perl 开始,您可以在学习语言的同时使用您已经熟悉的习语(即 C 风格的 for 循环与 Perl 的 foreach)。

      【讨论】:

      • 感谢乔的建议:)
      【解决方案9】:

      据我所知,PHP 是执行以下任务的脚本语言之一:订购输入文件,向服务器发送编程请求……而且 PHP 是类似 C 的语法,据说是最容易学习的(你甚至不必在使用它之前学习它,你只需在学习它的同时使用它)。但是 PHP 不是通用的脚本语言。

      Python 是一种通用的脚本语言,具有强大的类型检查功能,它不像 C 的 bug,恐怕你不会喜欢它。

      我自己最常使用 PHP 进行文本处理、网络(套接字、HTTP...)测试。 ^_^

      【讨论】:

        【解决方案10】:

        这些都是很好的脚本语言,恕我直言,您选择哪一种可能不会有太大的不同。我希望我不会因为在主要是宗教争论中注入现实的答案而被否决。这基本上就像当你为上哪所大学而苦恼时,有人指出,只要他们都是好学校,就不可能对你的生活产生重大影响。

        我使用 Perl 来编写 CLI 程序,因为它是我学习的第一个脚本语言(20 多年前,它是在新生的 WWW 上编写 CGI 脚本的通用语言)。我现在使用 PHP 来编写 web 应用程序,因为我上一份工作是用它来编写我们的 Intranet 网页,并且它具有许多用于 web 和 SQL 编程的不错的内置功能;但我敢肯定,通过编写 CPAN 模块,我可以像使用 Perl 一样高效。

        如果有一种语言在您合作并尊重的其他程序员中很受欢迎,那可能是选择它的最佳理由之一,因为您将拥有一个方便的支持社区。 SO 很好,但更好的是能够向当地专家学习。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-12-22
          • 2010-12-03
          • 1970-01-01
          • 2010-09-12
          相关资源
          最近更新 更多