C# · 12月 27, 2021

Boo vs C#vs Python?

我是(是的,是)一个 Python(和之前的VB6)情人,直到尝试创建GUI应用程序.创建GUI非常(非常)困难,并执行可执行文件(一个hello world应用程序是2 MB).

然后,我跳到VB.NET,但收藏看起来很辛苦,对我来说是愚蠢的.然后,跳到C#,但现在真的不知道C#.我订了一本好的(土耳其语)C#书.

现在我遇到了嘘.它是一个更多的Python语法,.NET,编译和编译在C#lang.我喜欢它,甚至超过C#.但是我没有找到一本关于Boo的书.

而我真的不知道,正在学习Boo比C#更好,或者学习C#比Boo更好.我只想要一些像数据类型的Python.那些是:

> {key1:value1,key2:value2}→字典(有些像HashTable)
> [Value1,Value2,Value3]→列表(可以编辑/更改)
>(Value1,Value3)→元组(无法编辑/更改)

我使用的字典超过列表和元组.我想知道,哪个更好?

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

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

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

所以简而言之,不要在Boo和C#之间做出选择 – 他们实际上是互补的.