Boo vs C#vs Python?

Boo vs C#vs Python?,c#,python,programming-languages,boo,C#,Python,Programming Languages,Boo,与C#相比,Boo感觉有点像python,但它也被编译成.NETMSIL。我喜欢它的语法,甚至比C#的语法还要喜欢。但我找不到一本教Boo的书 我真的不知道,如果学习Boo比C#好,或者学习C#比Boo好。我只想使用一些类似Python的数据类型。这些是: {key1:value1,key2:value2}→ 字典 [Value1、Value2、Value3]→ 列表(可编辑/更改) (值1、值2、值3)→ 元组(无法编辑/更改) 我使用字典多于列表和元组。我想知道,哪一个更好?在.Net中

与C#相比,Boo感觉有点像python,但它也被编译成.NETMSIL。我喜欢它的语法,甚至比C#的语法还要喜欢。但我找不到一本教Boo的书

我真的不知道,如果学习Boo比C#好,或者学习C#比Boo好。我只想使用一些类似Python的数据类型。这些是:

  • {key1:value1,key2:value2}
    → 字典
  • [Value1、Value2、Value3]
    → 列表(可编辑/更改)
  • (值1、值2、值3)
    → 元组(无法编辑/更改)

我使用字典多于列表和元组。我想知道,哪一个更好?

在.Net中有列表和字典:System.Collections.Generic.List和System.Collections.Generic.Dictionary


至于语言:只要学一种对你来说更有趣的语言就行了。语言的选择通常是宗教性的。特别是在.Net平台上,每种语言的功能几乎相同。

如果你想从事.Net开发工作,了解C#将非常有用。但是,学习Boo将允许您在.NET环境中使用所追求的类似于Python的特性。你可能还应该去看看,那里确实有书可供选择()

我的一般意见是,最好选择C,因为在我看来,C的资源、文档和教程更容易找到。

我不确定你的最终目标是什么,但是在您放弃python之前,请检查一下用于构建gui的python/Qt组合。您可以构建复杂的跨平台GUI,而且非常容易掌握

我发现Boo在创建简单的一次性脚本时非常有用,同时保留了我的Pythonic源代码风格。由于它可以编译成可运行的EXE或DLL,我可以使用ILMerge将一个EXE和所有需要的DLL(包括Boo.Lang.DLL)打包,然后发送到客户端,通常用于某种快速故障排除或系统诊断

我还使用Boo支持我的C#开发。我经常启动Boo解释器来尝试字符串或日期格式的变化,然后我几乎可以直接将最终版本复制到C#中

但是很难找到Boo的文档。我不得不在谷歌上搜索一些泛型的语法,因为它们是Boo的一个相对较新的补充,在任何教程甚至参考页中都没有提到。谷歌搜索“boo”会产生很多不必要的点击,这使得搜索更加困难


因此,简而言之,不要在Boo和C之间做出选择——它们实际上互补得很好。

我所见过的唯一一本关于Boo的书是《可能的复制品》?-指针!?用一种声称受Python启发的现代语言!?(主观)失败。@RussCam:谢谢链接-我很喜欢Boo,但查找文档很困难。aa问题是:关于列表/元组?关于GUI?关于Boo/C#/Python?关于书?什么?VB.NET也没什么问题。从技术上讲,就是这样。不喜欢它的人通常只是不喜欢它的味道,他们实际上并不了解VB.NET。我所看到的对它唯一真实的抱怨是它的语法相当冗长,但对我来说这是一个优点。到目前为止,C#中已经添加了许多VB.NET功能(反之亦然),除了表面语法外,其他语言差别不大。我已经知道(并尝试过)PyQt、wxPython、Boa构造函数、IronPython Studio和其他语言,但tnx提供了建议(我不是Python n00b:S)。“每种语言的功能几乎相同。”这只适用于C#vs vb,你这么认为吗?例如,我几乎可以用C做我能做的所有事情,用C++/CLI做。我相信我也能在C#中的Boo中做任何我能做的事。唯一不同的是动态类型的语言,比如IrPython,在C语言中也会发生变化。试着在C(4)或C++中创建一个类似BoD的DSL。请参见尝试为C语言(甚至4)或C++添加一个扩展来添加模式匹配语言。在Cype(甚至4)或C++或IrPython中,可以尝试进行模式匹配,比如在BO或F.Y.尝试CsApple Pro/GSACK中: