在两个移动平台上并行开发还是按顺序开发更好



我们想开发一个同时在iOS和Android上运行的应用程序。但是,我们无法决定是先在一个平台上创建应用程序,一旦我们满意,就将其复制到另一个平台上,还是在开始时完成UX决策并并行开发平台。

该应用程序很简单,我们有开发它的资源。这只是一个是按顺序还是并行开发平台的问题,如果是按顺序开发,那么从哪个平台开始(再次假设资源分配不是问题(。

对我来说,同时开发两个版本总是意味着更多的时间。你可以完美地定义你的设计、工作流程、架构,但在开发过程中总会有变化(不是说是否有外部客户在做决策(。如果你同时针对两个平台进行开发,则很有可能会实现两次这些更改,而如果你首先在一个平台上完成应用,则在第二个平台中应该不会发现更多意想不到的惊喜。

那么下一个问题是:我应该从哪个平台开始?我选择安卓有两个主要原因:

  • eclipse中重构代码/项目结构(至少对我来说(比xcode要容易得多。

  • 我在设计用户界面时牢记最大的分辨率(Android xxhdpi(,然后我使用Android资源命名约定(比ios更严格(剪切了最终的png资产一次,并为其余密度(xhdpihdpimdpiiOSiOS@2x(运行自动化任务。


关于跨平台框架(即phonegap(,恕我直言,努力永远不会被除以二,用户体验永远不会接近本机应用程序获得的体验。除非你的应用程序非常简单,否则我非常不鼓励使用这种框架。

当我们开始开发我们正在开发的应用程序时,我们也有同样的争论。

首先,我应该说,如果你的应用程序足够简单(没有太多沉重的动画、3D 等(,你可能想看看一些多平台解决方案:http://mobiledevices.about.com/od/mobileappbasics/tp/Top-5-Tools-Multi-Platform-Mobile-App-Development.htm

我个人觉得多平台解决方案仍然远远落后于本机应用程序,但它可能适用于某些应用程序。

最后,我们决定在一个平台(Android(上开发应用程序的基础架构

,然后在另一个平台(iOS(上开始构建应用程序,一旦Android应用程序的基础架构的强度和性能得到证明。当我们开发iOS应用程序时,Android应用程序的基础设施被复制了。

这样做有几个优点:

  1. 完成应用体系结构的设计后,在一个平台上对其进行一次测试。如果架构无法支撑,则无需从头开始 2 个项目 - 只需一个。

  2. 一旦你开发了一次应用程序,至少是基础设施,你已经经历了开发的所有主要障碍。这将使您能够相对轻松快速地完成其他平台的开发。

  3. 同时开发 2 个项目可能会导致代码在两个平台中的工作方式存在显著差异。虽然总会有一些差异,但由于平台之间存在很大差异,最好尽量减少应用程序运行方式之间的差异 - 这将使将来维护应用程序变得更加容易。(问题的解决方案基本上是相同的 - iOS和Android团队可以相互复制他们的解决方案(。

同时开发可能会更快,但风险更大,并且在需要维护应用时会花费更多时间。

希望这有助于您的决策:)

这在很大程度上取决于您如何开发应用程序。如果你在多平台上开发,我会向我们推荐一个像phonegap这样的框架:http://phonegap.com/。使用这种方法,您的问题消失了,并且您节省了一半的精力。

如果所有资源都可用并且要求明确,那么您应该进行并行开发,因为使任何资源闲置不是最佳做法。

最新更新