WPF到跨平台开发,最强大的跨平台UI框架是啥?

     2023-02-22     96

关键词:

【中文标题】WPF到跨平台开发,最强大的跨平台UI框架是啥?【英文标题】:WPF to crossplatform development, What's the most powerful cross platform UI framework?WPF到跨平台开发,最强大的跨平台UI框架是什么? 【发布时间】:2011-07-05 20:38:25 【问题描述】:

所以我们构建了一个 WPF 应用程序,现在我们的下一个版本也需要 Mac 版本。

Mono 显然会让人想起,但我们的应用程序的 UI 相当密集。有没有什么跨平台的东西可以远程接近 WPF 为您提供的应用程序样式?

当然,当前的应用程序是 C#,但如果我们需要返回到 C++ 以获得干净的 UI,那将不是问题。在这种情况下,您最终可能会重新用 C++ 编写两个单独的 UI,一个用于 cocoa,一个用于 win32?

【问题讨论】:

一种选择是将您的后端迁移到 C++,在 C# 中对其进行包装,并将您的 Windows UI 保留在 WPF 中,并在 Mac 上使用 Cocoa 您的后端应该与 UI 无关无论如何。如果 UI 是业务逻辑之上的一个层,而不是混入其中,它会使更新 UI 变得更加简单。 【参考方案1】:

恕我直言,最好有两个 UI,一个用于 Windows,另一个用于使用 Objective-C/Cocoa 的 Mac。

如果不使用 ObjC/Cocoa,就很难在 Mac 上获得“原生”用户体验。在 Mac 上不使用 Cocoa 的程序可以在很远的地方被发现。

嗯,最后,这还取决于您的业务目标和您的价值主张。

【讨论】:

【参考方案2】:

在 c++ 中使用 GTK+ 或 wxWidgets 或 Qt 或任何其他跨平台库。

【讨论】:

【参考方案3】:

我建议采用 MVVM 或 MVC 方法。必要时用 C++ 编写的业务逻辑;托管 C++ 中的包装类和完全独立的视图。 WPF 已经通过从逻辑中拆分视图来帮助解决这个问题。现在对于 mac 部分,我不能为此提供一个好的 UI Sdk。但是,尽可能将业务逻辑与 UI 分离,这样就可以相当容易地使用您想要使用的任何 UI API。

【讨论】:

【参考方案4】:

我一直是 Qt 的忠实粉丝

https://www.qt.io/developers/

一个非常不错的跨平台 C++ UI 框架

【讨论】:

【参考方案5】:

使用Monobjc 或MonoMac 可能需要最少的努力,同时在Mac OS X 上仍具有不错的用户界面。如果你想偷懒,你总是可以使用 GTK#。它默认与 Mono 一起提供,并且还具有与 Linux 兼容的额外好处。

【讨论】:

wpf是啥

...编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。对于企业,WPF实现了改进的客户关系和不同的应用程序。通过提供能够快速提供更好的视觉效果、独特的... 查看详情

pyqt完整入门教程(代码片段)

...也进行了相关调研。1.1通用开发框架electorn:基于node-js,跨平台,开发成本低,运行效率低qt:基于C++,跨平台,效率高,开发成本高javafx:基于java,主要用于跨平台桌面程序开发flutter:基于dart语言,谷歌开源移动UI框架,可... 查看详情

flutter浪潮下的音视频研发探索

...的音视频研发探索,主要内容是针对闲鱼APP在当下流行的跨平台框架Flutter的大规模实践,介绍其在音视频领域碰到的一些困难以及解决方案。分享内容主要分为四个方面,首先会对Flutter有一个简单介绍以及选择Flutter作为跨平台... 查看详情

qt是啥意思是

Qt是一个1991年由QtCompany开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展。QT指心电图QT,间期缩短是指从QR... 查看详情

wpf跨平台方案?

AvaloniaXPF[1]通过我们的跨平台UI框架,释放现有WPF应用程序的全部潜力,使WPF应用程序能够在macOS和Linux上运行,而不需要昂贵和有风险的重写。工作原理我们使用ForkofWPF使WPF应用程序能够在macOS和Linux上运行,这使... 查看详情

hadoop是啥意思?与大数据有啥关系?

...也涉及到数据分析和数据应用,所以对于当前大数据应用开发人员来说,整体的知识结构往往都是围绕大数据平台来组织的。随着大数据平台逐渐开始落地到传统行业领域,大数据技术人员对于大数据平台的依赖程度会越来越高... 查看详情

一个开源的,跨平台的.net机器学习框架ml.net

...软在Build2018大会上推出的一款面向.NET开发人员的开源,跨平台机器学习框架ML.NET。ML.NET将允许.NET开发人员开发他们自己的模型,并将自定义ML集成到他们的应用程序中,而无需事先掌握开发或调整机器学习模型的专业知识。在... 查看详情

swt是啥意思

...IDE-eclipse就是用SWT开发的。在SWT之前,Sun已经提供了一个跨平台GUI开发工具包AWT(AbstractWindowingToolkit).AWT框架底层使用原生窗口部件(nativewidgets)构建,只能使用各个平台窗口部件的子集。 参考技术B在Java中,SWT(StandardWidgetToolkit)Stand... 查看详情

qt是啥软件

跨平台的C++开发库。Qt是一个1991年由QtCompany开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对... 查看详情

哪个平台最好的套件软件开发 C#.net,WPF,MFC [关闭]

】哪个平台最好的套件软件开发C#.net,WPF,MFC[关闭]【英文标题】:WhichPlatformBestSuiteSoftwareDevelopmentC#.net,WPF,MFC[closed]【发布时间】:2012-06-1511:21:33【问题描述】:我是软件开发的新手,能否请您提供一些关于其他软件开发人员最... 查看详情

为啥除了flutter之外,我们还需要另一个跨平台开发框架?

...加功能。我们希望通过本文帮助大家进一步了解Compose的跨平台能力,以及JetBrains将Compose从Android扩展到这些其他平台背后的主要驱动力是什么。基于JetpackCompose1.0由谷歌打造的JetpackCompose是一款用于在Android应用程序之内构建用户... 查看详情

swt是啥

...IDE-eclipse就是用SWT开发的。在SWT之前,Sun已经提供了一个跨平台GUI开发工具包AWT(AbstractWindowingToolkit).AWT框架不使用原生窗口部件(nativewidgets),一直未能突破LCD问题。LCD问题导致了一些主要平台特征的遗失。参考技术ATheStandardWidgetT... 查看详情

使用html5开发移动端应用采用啥框架

...PhoneGapPhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。优点:可跨平台。phonegap框架帮我们解决了差异性,javascript与平台系统的连接由phonegap框架完成。提供硬件访问控制。可调用加速计... 查看详情

fluttevsrn

...Flutter是由Google的工程师团队打造的,用于创建高性能、跨平台的移动应用的框架。Flutter针对当下以及未来的移动设备进行优化,专注于AndroidandiOS低延迟的输入和高帧率Flutter的设计跟react-native很像,但是比RN进了一步Flutter的开... 查看详情

java的三大框架是啥,功能各是啥

...就不用了解数据库的细节。拓展资料Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电... 查看详情

Blender GUI 中使用的框架是啥?

...什么?QT?还是Tk、GTK+、FOX工具包、wxWidgets?因为Blender是跨平台的应用程序。【问题讨论】:另外请注意,如果您因为想要添加一些对话框而询问,您可以使用 查看详情

im即时通讯移动端开发跨平台ui技术

Flutter通过自绘UI组件,构建高质量跨平台组件库,解决了此类框架难以解决的双端一致性,Bridge通信效率等问题。并提供丰富的Widget组件,渲染性与NativeUI相媲美,掀起了大家对下一代跨平台技术探索的热情。... 查看详情

lr敏捷软件平台v7开发示例,功能设计模块化,ui特色明显(长文)

框架整体代码层次整体采用多层工厂/依赖注入模式。开发示例力软框架提供了比较友好的开发向导在用力软框架进行快速开发时有两种开发模式,一种是纯自定义表单无需编译的,一种是需要生成代码,重新编译的。*代码生成... 查看详情