再会!
我想为 Windows 7/10/11 创建视频会议服务。如果您需要实现最大的程序性能、最小的内存空间以及对硬件的要求不高,请告诉我该使用什么。例如:C++ 或 C#(如果是 C++,则为哪个编译器,如果为 C#,则为 .NET Core 或 .NET Framework)、Visual Studio 或 Qt Creator、Qt 或 MAUI 等。
PS亲爱的版主!我明白这个问题很可能无法明确回答,但请不要阻止我的问题(至少在我得到答案之前),因为对我来说,找出有理由的不同答案很重要。提前致谢!
IDE
如果您使用 C++ 或 C# 为 Windows 编写代码,最好使用 Visual Studio。目前Visual Studio的最新版本是2022。对于非商业开发,如果你是写代码自学,或者这是一个开源项目,你可以使用免费版的Community。对于闭源商业开发,我使用的是付费的专业版。
如果您不是在 Windows 上开发,或者不想为 IDE 付费,您可以尝试最新版本的 Visual Studio Code。此 IDE 完全免费,但包含的功能较少,并且需要更多时间和特定知识来设置。
语
C++ 或 C# - 就最终应用程序的性能而言,这根本不重要。因为我只用 C# 和 .NET 编写,所以我会告诉你。
.NET的当前版本是.NET 6,.NET 7即将发布,微软在每个版本中都在优化.NET性能,以及在.NET中加入新的C#和API函数,使尽可能多地编写非常快速和轻量级的代码。因此,.NET 6 通常比旧的 .NET Framework 4.x 快得多。
.NET 6 对指定操作系统的兼容性没有问题。但这取决于你要使用操作系统的哪些功能,例如,如果需要 HTTP/2 或 TLS 1.2,那么必须在 Windows 7 上安装必要的服务更新,否则将无法使用。
目前,.NET 最现代的 UI 引擎是 Windows App SDK(WinUI 3),但它不兼容 Windows 7 或 8。WPF 完全兼容并且非常强大,它也有相关性,你应该采取这个用于开发的特定库集。如果您需要跨平台(Mac OS)或移动开发,MAUI 值得一试。
视频
有许多不同的视频编码库,一些内置在 .NET 中,还有像 ffmpeg 这样的原生库,可以轻松连接到原生 C++ 应用程序和 CLR C# 应用程序。因此,特别是在这个地方,具体写什么也没有特别的区别。
总计: Visual Studio 2022 + .NET 6 + WPF(当然是 +MVVM)
如果我选择写什么,我会拒绝Win7,并会使用Win App SDK。微软目前正在积极开发的正是这个 UI 引擎。迄今为止,潮湿,但积极完成,我不认为潮湿是一个问题。应用程序本身会比 WPF 吃重一点,但是如果你不打算写一个 Visual Studio 大小的项目,你不应该考虑内存,这个值更多地取决于项目的填充,而不是它的类型。
我认为论坛上同时了解 C++ 和 C# 的人并不多,因此您不太可能得到可以帮助您做出决定的真正好的答案。有人会在不了解另一种语言的情况下说更好的 C++/C#。但是,好吧,以上所有内容都不是答案。
如果你想要性能- C++
没有足够的空间——这一切都取决于你。
重要的是在这里理解 C# 将使您更容易实现这一点,而 C++ 将运行得更快。在这里,您将不得不选择。
如果您选择 C++,请继续阅读:
我使用 Visual Studio 2019 并用 C++ 编写,所以我推荐它。易于安装,工作正常。
Qtcreator 和 Qt 是不同的。Qtcreator 是一个 IDE,而 Qt 是一个框架。如果你真的想要优化,就拿OpenGL,如果你不想融化你的大脑——sfml。如果这不符合您的喜好 - Qt。