【发布时间】:2014-04-15 09:49:25
【问题描述】:
我有一个项目,我应该开发一个移动应用程序 (android) 和一个网站。由于它们都具有相同的数据库/内容和功能我想为移动和 Web 应用程序编写通用服务器端。
现在我有两个选择:
在服务器端开发 RESTful Web 服务 我的 android 应用程序和网站(HTML/Javascript)将进行通信。我认为这对于网站开发来说不是一种舒适的方式,因为您在页面加载时使用 javascript 填充了所有 HTML 组件值。
使用 MVC 框架(例如 CodeIgniter)开发一个 Web 应用程序,其中每个页面将有两个视图:
a) 网站的通用 HTML/CSS/Javascript 页面
b) 移动应用程序的 JSON 数据。在这种情况下,移动应用将对 URL:www.mySite/someParameters 进行 HTTP GET 调用,并作为结果响应 JSON 数据。
选择哪一个更好?
或者,您还有其他建议吗?
【问题讨论】:
-
不应该是 RESTful 的(我已经用正确的首字母缩写词对其进行了编辑),这正是您在第 2 点中解释的内容?请参阅 here,“应用于 Web 服务”。但是,是的,我肯定会遵循这个想法(两点,一个想法!)。
-
@Sigismondo 是的,当然,它将是 RESTfull。请参阅第 1 点,我添加了一些额外的描述。第 2 点的主要优点是您像往常一样开发网站,您对移动应用程序的额外操作是您只需添加一个显示 JSON 数据而不是 HTML 的视图。我个人更喜欢第二点,但我对人们如何开发此类应用程序感兴趣。什么是最佳做法?
-
一旦它是 RESTful 的,就可以按照您的喜好实现视图,遵循其他约束。例如,您可以看一下... stackoverflow 本身!这是 API 文档:api.stackexchange.com/docs - 在这里您可以找到许多应用程序或皮肤:stackapps.com - 也可以查看 SO 的移动站点。如果您的应用程序与这种“动态”级别相当,这是一个不错的选择……但如果您开始需要更多反馈,使用 OpenGL 图形,不需要 iOS 可移植性,则原生应用程序更加灵活。
-
哦,是的,不是网络开发人员(还没有?),我也更喜欢选项 2 :)
标签: web-applications architecture server-side software-design mobile-application