Questions tagged «cross-platform»

在计算中,跨平台或多平台是赋予计算机软件或在多个计算机平台上实现并互操作的计算方法和概念的属性。

3
为什么“胖二进制文件”没有更广泛地用于跨平台应用程序?
据我所知,所谓的“胖二进制文件”(包含用于多个系统的机器代码的可执行文件)仅在Apple PC上真正使用过,甚至在那里似乎它们仅使用它们是因为它们需要从PowerPC到x86。 如今,许多软件都是跨平台的,似乎制作单个胖二进制文件比跟踪操作系统和体系结构的每种组合的十几个左右不同的下载要简单得多,更不用说以某种方式传达给客户他们想要哪一个。 关于这种方法为何从未流行的原因,我可以提出很多猜测,例如: 缺乏交叉编译工具使多操作系统二进制文件不可行 无论如何,您都需要在每个操作系统上测试代码,因此您已经必须拥有可以针对每个操作系统进行本地编译的系统 显然,32位程序已经可以在64位计算机上“正常工作” 动态链接在每个OS上的工作方式都不同,因此即使“胖应用程序”可以运行“胖库”也可能不起作用 但是由于我一直在使用一个库或框架来向我隐藏所有这些特定于操作系统和特定于体系结构的详细信息,所以我不知道这些内容到底有多真实,或者是否还有更多我不知道的问题关于。那么,为什么通常不使用胖二进制文件来创建多体系结构和/或多OS软件的实际原因是什么?(Apple以外)

7
Java(仍然)是跨平台语言的选择吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 从90年代开始使用Java时,从第一天开始就是“ 写一次,就可以在任何地方运行! ”。那时那可能是真的,我也是合唱团的一员。 考虑使用所有其他使用多平台运行时的语言(python,flash,perl,html,php ...)时,我不确定该怎么考虑。但是我仍然看到很多争论,说应该使用Java,因为它据说更适合跨平台开发。 所以,今天仍然如此吗?Java仍然是多平台开发的首选语言吗? 请具体说明跨平台方面。 我不要求进行一般语言功能比较。 更新:到目前为止反应良好!大多数答案似乎都偏爱Java或Web。脚本人群有什么意见吗?

4
为什么通常将字符串资源保留在代码外部而不是代码内部?
通常,在许多平台上,我都将字符串资源写入.resx或.xml文件,然后使用某种依赖于平台的方法来获取它们。 也就是说,在iOS上,我通过NSBundle.MainBundle和Context.Resources在Android上使用来获取它们。 这种方法的优点是什么,为什么不直接在代码中访问它,例如: 在跨平台项目中,任何平台都可以直接访问它,而无需集成。 在构建过程中,无需担心资源是否构建良好。 编码人员可以使用多种语言处理功能 长话短说:以这种方式构造字符串资源的原因是什么? [编辑] 假设我的文件是其他项目之间共享的“核心”项目的一部分。(考虑一下PCL跨平台项目文件结构。) 并假设我的文件与.resx / .xml文件完全相似,看起来像这样(我不是xml专业人士,对不起!):参数Paramètres 因此,这基本上是一个自定义xml,您在其中指向键/语言以获取正确的字符串。 该文件将成为应用程序的一部分,就像您在应用程序内添加任何可访问文件一样,并且系统将访问使用PCL编码的字符串资源。这会增加应用程序的开销吗?

6
如何解释为所有操作系统编写通用的跨平台C ++代码并交付产品并不是那么容易?
我们公司为Windows发行了一系列桌面产品,许多Linux用户在论坛上抱怨我们应该是几年前为Linux编写的产品版本,而我们不这样做的原因是 我们是一家贪婪的公司 我们所有的技术专家都是白痴 我们的平均产品约为300万行C ++代码。 我和我的同事的分析如下: 编写跨平台的C ++代码并不是那么容易 准备大量分发包并为所有广泛的Linux版本维护它们需要时间 我们的估计是Linux市场占所有用户的5-15%,而这些用户可能不想为我们的努力付出代价 当提出这个问题时,人们的回答再次是,我们是贪婪的不合格白痴,而当一切都做对了时,这一切都是简单而轻松的。 我们对编写跨平台代码和维护大量分发包需要付出大量努力这一事实的评估有多合理?我们在哪里可以找到一些简单而详细的现实故事分析,这些分析显示出毫无疑问的阴影,确切地需要付出多少努力?

9
Ubuntu是否可以作为IT顾问的笔记本电脑使用?
我通常在大型企业中担任顾问程序员。我使用Windows笔记本电脑,而我的许多同事都使用Mac。 如果可以完全控制自己的开发环境,我个人将是运行Ubuntu。但是我偶尔会需要Microsoft特定的产品,尤其是IE。 在这种情况下,使用Mac的同事经常在虚拟机上运行Windows。 我的问题是:Ubuntu对于企业程序员的笔记本电脑是否可行?例如,在Ubuntu的VM上运行Windows是否像在Mac上一样容易?有没有人尝试过这个?在这种环境下,Ubuntu不能与Mac一样好地用于开发吗? 请注意,我没有进行.NET开发,因此通常要处理Java,该Java将在Apache服务器上运行,并由运行Windows的客户端使用。

5
确保跨平台兼容性(C ++)的技术?
我正在完成我最早的C ++项目之一(根据框架),该项目应该是跨平台的。我完全在Windows和Visual Studio中开发了该项目,以为既然这些库都是跨平台的,那么“以后”进行OSX构建将是微不足道的。事实并非如此,而是“ Windows代码”无法正常运行,并且需要解决一些编译错误。 预先存在哪些技术可以确保代码与所有平台兼容?同时开发所有平台,从而在添加新功能时针对每个平台同时测试代码,而不是一个接一个地开发不同的平台版本?(*) 从外观上来看,特别建议不要依赖于工具,而可以使用“开发过程”来帮助跨平台兼容性,无论使用什么工具。就像上面的一个(*)。 具体来说,我正在使用WDL-OL(https://github.com/olilarkin/wdl-ol)和一些跨平台DSP库开发VST插件。WDL-OL项目同时设置了VS和Xcode项目,但我想问题出在库中,然后是编译器之间的差异。

5
Java是跨平台游戏的不错选择吗?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 6年前关闭。 我正在寻找用Java创建游戏,并希望它可以在Windows,Linux和Mac上运行。我很确定C#是一个不好的选择,并且我没有足够的C或C ++经验。我想远离Flash。因此,Java对我来说是一个不错的选择吗?通常,我使用C#,并认为Java是相似的,因此我认为学习起来并不难。但是足够快吗?有没有比Java更适合我需要的语言?

7
Delphi XE2如何在各种平台上工作?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 4年前关闭。 因此,我一直在阅读有关Delphi XE2的文章,我很可能会去本月晚些时候在芝加哥进行的世界巡回演出,问这个问题是否有人在这里不能回答。 我想知道如何在Mac上执行我的Delphi代码?为了使程序运行,是否还需要运行其他东西(即虚拟机)?

2
JRE库中的类是否支持对外部/非JRE程序集的可观察和/或异步读取?
如何实现我的跨平台库(例如在JRE上)以对对象引用以线程安全的方式进行操作,以便其他平台上的本机前端可以观察对象并利用Observable模式? 有一点背景-大多数前端框架中都使用了数据绑定的概念。在C#和Java中,这与Observable特性有关,该特性使类能够在发生更改时触发事件,多个控件或“观察者”可以订阅该事件。这样,观察者就不必继续轮询/读取资源,进行更新比较。 我想研究一个分析引擎,该引擎会随着时间的推移对数据列表进行更改。能够让前端在分析运行时能够观察这些列表将是很好的。在我看来,这将要求前端能够将对象传递给分析引擎,并在希望跨平台的库中编写该对象,并且能够对该对象进行线程安全读取。否则,让图书馆满足可观察性合同。 在较旧的Unix风格的CLI引擎中处理此问题的方法是使用stdin / stdout / stderr,并使引擎定期更新更新。这需要标准的开销和文本解析,如果可能的话,我宁愿避免。

4
是否可以在Linux上使用Intel C / C ++编译器来创建要在Windows上链接的目标文件?
为什么? 取决于您的来源,英特尔编译器很可能或最肯定会为x86架构生成最快的可执行文件(将执行时间缩短5%至100%)。 英特尔根据非商业许可证免费提供其Linux编译器(我认为我在其页面上的某处免费阅读了该文件:英特尔-非商业软件开发)。还有一个针对学生的免费非商业许可证,但是尽管为所有三个主要操作系统都提供了工具(由于信誉限制而导致链接断开),但该许可证不适用。 目标 我(作为非学生)希望能够使用英特尔编译器来提高非商业许可下的执行速度,以编译可链接以创建Windows(可能是OS)的可执行文件和动态链接库的目标文件。 X) 更多细节: 从本文档中可以推断出,英特尔编译器会创建与平台的主流编译器兼容的目标文件。 子问题: Windows和Linux(当前版本)上的gcc,g ++,cl,mingw32,icc,icpc和icl的目标文件格式是什么? mingw32交叉编译器工具链的一部分可以用来实现目标吗? 我认为生成的目标文件中的元数据是主要问题吗? 广告2: mingw32-objcopy似乎能够将Linux(可能是ELF)上的Intel编译器输出转换为与Microsoft兼容的COFF(可重定位目标文件可能除外)。有人可以确认这确实有效吗(适用于非平凡的应用程序)?

4
跨平台的GUI工具包有趋势吗?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 目前,跨平台 GUI框架的使用趋势如何?是更多的人开始使用跨平台框架(例如GTK +,Qt和wxWidgets),还是有更多的人在使用更多与平台相关的框架(例如Cocoa或WPF)?它多少停滞不前?像过山车吗?从现在起的5年后,您认为这种趋势会如何? 使用Windows的人越来越少,操作系统的格局正在发生变化(个人观察)。这应该会增加对跨平台工具包的需求,不是吗? 编辑:此外,哪些工具(跨平台)正在增长最多,如果可以的话?

5
JVM和Java的WORA与其他高级语言有何不同?
在Java世界中,我们经常谈论JVM,而Java刚发布时,它具有所谓的杀手级功能:“一次编写,在任何地方运行”。 从人们的交谈和书写方式来看,这似乎与Python的工作方式不同。但是我还没有发现我编写的Python代码在另一台机器上可以有不同的工作方式。(尽管我没有写太多的Python。) 那我想念什么呢?JVM与Python解释器有何不同?有没有办法使Python缺乏Java的平台独立性?还是仅仅是文化差异?

3
跨平台桌面编程:C ++与Python
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 好了,首先,我有作为业余Obj-C / Cocoa和Ruby w / Rails程序员的经验。这些功能很棒,但是它们对于编写跨平台应用程序并没有真正的帮助(希望GNUStep有一天可以足够完整,对于第一个成为多平台的应用程序,但是今天不是今天)。 据我所知,C ++非常强大,但它却是一个庞大,丑陋的庞然大物,需要花费半年甚至更长的时间才能掌握。我还读到,由于内存管理完全是手动的,因此您不仅可以轻松地用脚开枪,还可以用它把整个腿炸掉。显然,这一切都令人生畏。这是正确的吗? Python似乎提供了C ++的大部分功能,并且以速度为代价更容易上手。这个牺牲有多大?它有意义还是可以忽略? 在合理的时间内,哪一个让我编写快速,稳定,高度可靠的应用程序? 另外,将Qt用于您的UI还是为每个平台维护单独的本机前端会更好吗? 编辑:为了更加清晰,我想编写两种类型的应用程序:一种是极其友好和方便的数据库前端,另一种无疑是稍后会出现的3D世界编辑器。


1
AppMobi和PhoneGap有什么区别?
我是跨平台应用程序开发的新手。我遇到了非常相似的跨平台框架AppMobi和PhoneGap。 我想知道 使用Appmobi创建的apk / ipa和使用PhoneGap创建的apk / ipa之间有什么区别吗? 可以使用的本机功能是否有差异? appmobi优于phonegap或PhoneGap优于Appmobi的优势是什么? 两者之间还有其他区别。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.