Programming languages 如果我';我已经开始使用PowerShell了?
不久前,我开始使用PowerShell,它真的很棒。我知道的几乎每一件事我都能编码,我可以使用.NETFramework,WMI,甚至WinAPI。像管道这样的特性可以帮助我编写易于管理和可读的代码。V2增加了高级功能、模块、后台作业、远程处理(woow)等 正如我所说,我几乎可以用PowerShell做任何事情,但我想学习一门新语言。主要原因是进一步的自我教育。其他原因(不太重要):Programming languages 如果我';我已经开始使用PowerShell了?,programming-languages,powershell,scripting,Programming Languages,Powershell,Scripting,不久前,我开始使用PowerShell,它真的很棒。我知道的几乎每一件事我都能编码,我可以使用.NETFramework,WMI,甚至WinAPI。像管道这样的特性可以帮助我编写易于管理和可读的代码。V2增加了高级功能、模块、后台作业、远程处理(woow)等 正如我所说,我几乎可以用PowerShell做任何事情,但我想学习一门新语言。主要原因是进一步的自我教育。其他原因(不太重要): 一些限制(例如,在PowerShell或泛型支持中使用线程并不容易) 速度(可能是将所有对象包装到PSObj
- 一些限制(例如,在PowerShell或泛型支持中使用线程并不容易)
- 速度(可能是将所有对象包装到PSObject而不是直接使用对象的成本)
- 跨平台开发(例如,我可以在Symbian上运行Python,这在PowerShell中可能不可能实现)
如果它能够处理我指出的局限性,那就更好了 我更喜欢脚本语言,因为REPL循环和它不像C#那样冗长,但这不是必需的 我已经快速浏览了IronPython。主要原因是主办会议。然而,我想念管道,它太冗长了,与PowerShell相比有点笨拙
我的背景是:我用这些语言(至少是初学者)工作过:用C语言,C++,JavaScript,TSQL。我快速浏览了一下python,但这并没有说服我尝试一下(可能是一个错误) 我不认为这个问题应该结束,因为它是特定于PowerShell的,并且与其他(脚本)语言进行比较。如果您投票赞成结束,请至少留下一条注释说明原因。如果您想要另一种脚本语言,那么我建议您选择VB脚本(以便能够阅读您将找到的所有Windows脚本示例)或JavaScript(补充用例:web客户端编程是一个不同的开发领域)
同样,您可以看看C#:既可以编写.NET代码,也可以扩展PowerShell。它还将使人们更容易理解.NET框架的功能(PowerShell中的大多数框架都没有示例,但到处都有C#示例)。IronRuby呢?Ruby通常被认为是一种令人愉快的编程语言,而IronRuby项目有微软的支持,因此有一天它可能会成为一种“合适的”.NET语言”
不过,它还处于早期阶段,似乎还没有准备好在现实世界中使用。虽然F#本身不是一种“脚本”语言,但值得一看。它确实支持管道(|>)和许多其他更高级别的功能,如模式匹配。VisualStudio中提供了一个交互式控制台以及一个独立的控制台交互式提示符。F#还有一个功能性质,有点“扭曲思维”,但很好。:-) 不确定您测试了哪个版本的IronPython,但我强烈建议您再看一次。IronPython的最新版本是根据2.6标准构建的,这是大多数其他用户正在使用的python版本。它可能比一些脚本语言更冗长,但在我看来,它更像是一种完整的编程语言ala C#,而不是一种脚本语言。在IronPython中使用和比在Powershell中更容易。此外,您还可以像在Powershell中一样利用.NET库和程序集。(对于跨平台代码,您需要只使用python类) 我的典型方法是,当我需要一起破解某些东西或执行系统管理任务(文件、注册表、wmi等)时,使用Powershell,如果IronPython更复杂或是一个小的辅助代码项目,则使用IronPython,然后使用C#表示商业级代码。它们都提供了不同的思维方式(管道、动态类型、静态类型),但都使用相同的基本.NET库,因此在不同语言之间切换时,我不必再考虑如何解析日期时间 至于您的需求,IronPython/python似乎非常适合:
祝你好运 谢谢你的回答,我希望至少有一个;)事实上,我是一名c#/web开发人员,所以在某些情况下