C#适合作为一种脚本语言吗?

10

我需要一种编程语言来制作小型应用程序。作为一名C ++程序员,我认为C ++不适合这个目的,因为从头开始创建新应用程序并部署它需要太多的精力。但是,我想使用同样强大的语言,所以我想知道是否可以将C#用作脚本语言?


4
我同意Thomas的观点。如果你不接受答案,怎么能指望别人花时间回答你的问题呢?这次我就不参与了。 - Drew Noakes
这不是有点偏离了 Stack Overflow 的初衷吗? - RobV
@RobV:我不这么认为。我更喜欢采用投票系统来选择最佳答案,而不是仅凭自己的意见。 - Dimitri C.
4个回答

18

阅读这个

CS-Script - C#脚本引擎

CS-Script是基于CLR(通用语言运行时)的脚本系统,使用符合ECMA标准的C#作为编程语言。CS-Script目前针对Microsoft CLR实现(.NET 2.0/3.0/3.5),在Mono上有限支持。

CS-Script是一个开源项目,它以许可协议的形式分发,可以在这里找到。但也提供商业支持。

CS-Script结合了C#和FCL的强大和丰富性与脚本系统的灵活性。CS-Script对于系统和网络管理员、开发人员和测试人员非常有用,对于任何需要自动化解决各种编程任务的人都有用。

并且

将C#视为脚本语言


好答案。非常精准! - Preet Sangha

5
我认为脚本语言的常见优点有:
  1. 通常具有命令行解释器
  2. 您不一定需要编译它
  3. 更改代码很容易 - 因为源文件是实际的“可执行文件”
这些都不是C#的特点,因此一个可以做到几乎所有这些的语言是PowerShell,因为它使用.net,因此可以访问您可能在C#中使用的所有功能。
编辑:只是为了再次提起这个问题...
与同事聊天后,我想到了像Ruby和Python这样的脚本语言。
对我来说,最重要的特性之一是能够直接在脚本中运行代码,而无需主函数。在c#中没有这样做。但是,在我想到的所有脚本语言中都可以做到这一点:
例如,Ruby、Python、Javascript、Powershell

1
Mono为C#提供了一个REPL(请参见我的回答中的链接)。 - mavnn
从C# 9开始,您可以使用顶层语句(C#编程指南) - Olivier Jacot-Descombes

5
你可以尝试使用Python,它是一种既易于理解又功能强大的语言。 许多语言都可以解析/执行Python。
例如:使用SWIG在Python中使用C++代码或使用Boost将Python代码嵌入到你的C++应用程序中。

2
同意。如果楼主想要 .NET 框架的强大功能,IronPython 是一个很好的选择。 - Marc Gravell

4
如果您想要使用C#进行脚本编程,另一个有用的工具是http://www.mono-project.com/CsharpRepl:这是来自mono团队的C#交互式提示符。
我认为,特别是通过Mono,提供了使用C#作为非常有效的脚本语言所需的所有工具,几乎任何您编写的都可以在.net中运行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接