Powershell和Ruby之间的差异
-
10-10-2019 - |
题
我是动态语言场景的新手,并试图找到一个好的起点。
查看微软如何减少铁红宝石在其产品中的作用,我正在寻找一种动态的编程语言,该语言将在DotNet平台上得到支持。您能否列出一项但未找到的特定功能来协助选择。
解决方案
PowerShell主要是Windows自动化工具,它以几种方式浮出水面:
- 壳(控制台)Ala Kornshell,CSH,bash。
- 动态的脚本语言。
- 可托管引擎ALA TK/TCL和Windows脚本引擎。
- Windows 7故障排除框架的基础。
我将诸如Python和Ruby之类的语言视为通用语言,虽然它们可能会提供REPP提示,但并不适合外壳编程,即轻松发射系统命令和EXE,捕获STDIN/OUT,处理非终止与终止错误等等。这就是Powershell闪耀的地方。
OTOH,我不会将PowerShell用于所有通用编程任务。它不能:
- 定义.NET类型(除非类型PscustomObject的类型)
- 实现接口
- 实施任何通用
- 无法调用通用方法
- 不支持静态扩展方法调用语法,例如array.where()
- 不支持名称空间导入的概念(即使用系统;在C#中)
就像俗话说一样,请务必为工作选择正确的工具。
不隶属于 StackOverflow