我是Windows开发人员的长期工作,看起来我将参与将Windows应用程序移植到Mac上。
我们决定使用Flex / Air作为双方的gui,看起来非常光滑BTW。
我的Windows应用程序有一个控制网络适配器(有线和无线)的C ++ DLL。这是使用标准库和Boost编写的,因此大多数应该跨平台工作。
在Mac上,如果想要编写C ++,大多数人会使用哪种IDE /编译器?此外,有人可以提供指向Mac的任何可以控制WiFi适配器(关联,扫描,断开连接等)的API的指针吗?
答案 0 :(得分:8)
Xcode是Mac OS X的IDE,您可以通过加入Apple Developer Connection并免费获得在线会员资格来下载最新版本。
我不相信有任何支持的API用于控制无线网络适配器。最接近的是系统配置框架,但我不知道它是否会让你做你想做的一切。
另外,我强烈建议反对尝试使用Flex / Air来获取应用程序的用户体验。作为Windows开发人员,它在Windows上看起来很光滑,但是当提供完整的Macintosh用户体验时,这些技术并不总是一个很好的选择。
举个例子,我认为Air应用程序不支持全系列的Mac OS X文本编辑按键。虽然并非所有的Mac用户都会使用所有键击,但对于那些习惯于他们的人来说,他们试图输入一个不能处理的文本字段(例如)控制-A和控制-E来到字段的开头和结尾就像游泳一样通过糖浆。
对于需要跨平台的新应用程序,我强烈考虑在C ++中构建核心逻辑,同时在Mac上使用Cocoa,在Windows上使用WPF,以在每个平台上获得最佳用户体验。 Mac OS X和Windows都拥有各自用户习惯的现代本机用户体验技术,并且还有很好的方法使C ++代码能够与这些技术进行互操作。
答案 1 :(得分:3)
事实上的OS X IDE和编译器是Xcode。它随每台Mac一起提供,只需从OS X安装光盘安装即可。
Apple's developer site是获取有关OS X API的更多信息的地方
答案 2 :(得分:2)
答案 3 :(得分:1)
Xcode和我相信的自定义GCC ......
答案 4 :(得分:0)
Xcode被大量使用,据我所知组合编辑器(例如Textmate),命令行gcc也被大量使用。 (这就是我在OS X上所做的事情)
对于所有API需求,请前往Apple's developer site,例如networking API的
答案 5 :(得分:0)
过去维护过windows / mac代码库,请查看MVC。
只要您保持背景逻辑与UI和特定于平台的内容(如文件处理,网络,绘图到屏幕等)不同。这样,当您希望将来使用Linux时,您只需编写这些特定于平台的组件。
对于mac网络,您是否处于连接等级?为什么不让操作系统处理它,然后你只看到可用的连接?为什么要关心连接是有线连接还是无线连接?因为操作系统已经内置了很多这些工具,并且用户习惯于确保连接能够正常工作,所以有一个额外的程序想要操作网络似乎很奇怪。