开发 Windows 控制台程序,是选择 Go 还是 C#?

查看 98|回复 11
作者:hahade   
目前我准备开发一个稍微有一点复杂的 Windows 控制台程序,但是不知道如何选择合适的编程语言,我目前了解到的如下:
C#
  • 很久之前学过,对于语法了解一些
  • 依赖运行时环境,比如:.NET Framework 4.x
  • 容易被反编译

    Go
  • 刚了解,语法不熟悉,但是感觉还不错
  • 不依赖运行时
  • 无法被反编译

    其它
  • 我需要调用 Win32 API ,不知道这两种语言哪个更方便一些
  • .NET 我只对于 .NET Framework 了解一点,.NET Core 不懂

    先感谢大家帮我分析一下!
  • cat007   
    Go 不了解,调用 Win32API 用 C#更方便吧,另外 C#代码可以混淆防止被反编译
    LongMaoz   
    .net 语法比 go 友好一点 不需要自行处理指针
    如果是稍微有点复杂,建议直接使用.net
    hahade
    OP
      
    @cat007 主要是不想花时间在反编译上面。
    helone   
    这俩语言其实都能满足,更多是看你熟悉哪个,C#开发肯定坑相对较少,Go 在 Windows 下还是有不少的问题的
    0o0O0o0O0o   
    > 容易被反编译
    > 无法被反编译
    否,只是分析难度不同。我认为真需要保护的话也不可能指望这种难度区别,C# 有商业化的保护,Go 据我所知是没有,只有功能有限且用起来略麻烦的开源混淆工具。
    > 依赖运行时环境
    https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/
    > 需要调用 Win32 API
    那肯定 C# 方便
    hahade
    OP
      
    @LongMaoz 感谢,没想到 Go 还有指针这东西。
    hahade
    OP
      
    @helone 感谢!
    hahade
    OP
      
    @0o0O0o0O0o 感谢,AOT 我还是第一次听说,有机会了解一下。
    ZZ74   
    都是虚拟机语言 go 怎么就不依赖运行时了。。。
    反倒是 c #,现在 win 一般自带一个 net 运行时,更便捷
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部