链接Cocoa桌面应用程序& RubyonRails网站

时间:2011-08-18 16:21:57

标签: ruby-on-rails cocoa architecture client-server

我正在开发一个包含中央网站和桌面应用程序的工具。我之前只是完全完成了在线开发,或完全脱机/客户端开发,而不是真的必须将两者联系起来。我可以使用一些帮助来解决如何将数据传入/传出在线网站的问题。桌面应用。

桌面应用程序需要进行通信&做一些iTunes的控制,所以最初我在OSX&利用ScriptingBridge框架。

在网站方面,我正在考虑使用Ruby on Rails,数据存储在mySQL数据库中,因为我非常熟悉并且似乎是一个很好的匹配它必须做的在线工作。 (但如果有更好的方法,请接受其他建议!)

我正在努力寻找在Cocoa应用程序之间轻松传输数据的最佳方法。在线rails数据库 - 是否有一种让Cocoa应用程序直接访问在线数据库的简单方法,或者通常是将一些XML转储到Web服务器并让应用程序读取它?

1 个答案:

答案 0 :(得分:0)

在您的RoR系统上打开RESTful API非常简单。让您的桌面应用程序使用JSON或XML与该API通信。

使用JSON而不是XML的优点:(1)在Rails(2)中操作非常简单,使用Javascript非常简单,如果需要构建除桌面客户端之外的Web客户端。

让桌面应用直接与远程数据库通信是一个非常的错误想法。两个主要原因:

  1. 安全。这样的设置只是被黑客入侵。有些数据库是“为网络构建的”(CouchDB浮现在脑海中)并且在这里会好起来,但MySQL不是。

  2. 灵活性。使用现场桌面应用程序,进行更改并将其分发给所有客户端很困难。如果需要更改架构,Web应用程序层通常允许您保持与桌面客户端的接口稳定。