在iPhone,Android和Web应用程序中重复使用代码

| 我将要为iPhone,Android和网络开发一个应用程序。我认为必须有某种“标准”方法来执行此操作,以便尽可能多地重用代码。 哪种方法最好?网页服务? (仅当应用使用互联网时)也许是API?其它的办法? 仅作记录,该Web应用程序可能将在Ruby On Rails 3中开发。 谢谢!     
已邀请:
有一些跨平台开发工具可以让您编写一次并针对多个平台进行编译。我知道我已经在SO上看到有关这两种工具的问题,所以其他人可能会对这些特定产品有一些好的建议。 电话间隙 http://www.phonegap.com/ 加速器 http://www.appcelerator.com/ 除非您正在考虑在每个平台上进行本机开发,否则Web服务API是一个不错的选择。我构建了一个由大量数据驱动的应用程序,并且构建了基于JSON的RESTful服务,这些服务为iPhone,Android和Web版本带来了沉重的负担。 在每个平台上实现功能仍然有很多工作要做,但是一旦我在一个平台上构建代码,辛苦的,创造性的工作就完成了,并且只是将其移植到下一个平台上(同样适用,大部分,以及图形)。由于我是分别为每个平台进行编码,因此我确实尝试利用该平台的代码和UI约定为用户提供本机体验(例如,在Android上为菜单按钮构建菜单,而在iPhone上则不支持)。对我来说,单独开发每个平台是有好处的,但是,这也大大增加了每个版本的上市时间。 由于您正在研究的是Objective-C,Java和Ruby,这是三种完全不同的语言,因此,如果不使用上面链接的中间层,就没有一种简单的方法来开发共享库。     
好吧,这三种语言都是不同的,因此您为一种语言编写的任何内容都不会对另一种语言有效。服务器上的API也许可以为您提供全部相同的数据,但是极不可能获得任何可重用的代码。我正在做同样的事情,并且意识到这一点,所以我只是在它们之间共享UI和代码设计等共同的东西。     

要回复问题请先登录注册