我在 Mac OS X 和 Linux 上开发丰富的客户端软件。我希望将一个应用程序移植到 Windows 平台,但由于不使用 Microsoft 产品,对 Windows 不太熟悉。
我熟悉以下内容:
在 Mac OS X 上,我可以选择 Cocoa 和 Objective C 或 Carbon 和 C/C++。在 Linux 上,我可以选择 GTK+ 和 C/C++ 或 Qt 和 C++。我更喜欢 Mac OS X 上的 Cocoa 和 Linux 上的 GTK+。Cocoa 的 Interface Builder 和 GTK+ 的 Glade 让我的工作变得轻松。在这些操作系统中创建丰富的客户端很有趣。
我的核心类或 MVC 中的“模型”是用跨平台的 C++ 编写的。用户界面类或 MVC 中的“视图和控制器”是用各自平台上的“首选”语言和 GUI API 编写的。
C++ 是我最熟悉的语言。我广泛使用 Boost 库,特别是智能指针、线程和 asio 网络库。对于 Unicode、本地化等,我使用国际化组件 Unicode (ICU)。
问题1:Windows 平台上与我的跨平台模型类兼容的“首选”语言和 GUI API 是什么?
问题2:如何访问我的跨平台模型类?
例如,在 Mac OS X 上,我通过控制器类访问我的模型类。控制器类是用 Objective-C++ 实现的。Objective-C++ 是 C++ 和 Objective-C 的混合体。视图对象在 Objective-C 中“与”控制器对象交互,而控制器对象在 C++ 中“与”模型对象交互。
在 Linux 上,所有类都是用 C++ 实现的。
我熟悉以下内容:
在 Mac OS X 上,我可以选择 Cocoa 和 Objective C 或 Carbon 和 C/C++。在 Linux 上,我可以选择 GTK+ 和 C/C++ 或 Qt 和 C++。我更喜欢 Mac OS X 上的 Cocoa 和 Linux 上的 GTK+。Cocoa 的 Interface Builder 和 GTK+ 的 Glade 让我的工作变得轻松。在这些操作系统中创建丰富的客户端很有趣。
我的核心类或 MVC 中的“模型”是用跨平台的 C++ 编写的。用户界面类或 MVC 中的“视图和控制器”是用各自平台上的“首选”语言和 GUI API 编写的。
C++ 是我最熟悉的语言。我广泛使用 Boost 库,特别是智能指针、线程和 asio 网络库。对于 Unicode、本地化等,我使用国际化组件 Unicode (ICU)。
问题1:Windows 平台上与我的跨平台模型类兼容的“首选”语言和 GUI API 是什么?
问题2:如何访问我的跨平台模型类?
例如,在 Mac OS X 上,我通过控制器类访问我的模型类。控制器类是用 Objective-C++ 实现的。Objective-C++ 是 C++ 和 Objective-C 的混合体。视图对象在 Objective-C 中“与”控制器对象交互,而控制器对象在 C++ 中“与”模型对象交互。
在 Linux 上,所有类都是用 C++ 实现的。