【发布时间】:2013-10-31 00:15:51
【问题描述】:
我有一个 iOS 和 Android 应用程序,它使用 JSON 和 PHP 从数据库下载数据。基本上它有很多从我的 MySQL 数据库返回数据的 mysql 查询。当我开始这个项目时,只是在 php 中创建了一个包含所有查询的数组。然后我会在我的 url 中发送一个索引来访问该查询和一些变量。
http://url.nl/script.php?index=1&var1=foo&var2bar
这很好用,对于一个小项目来说还不错,但我知道这不是好的编程也不是好的模型。
所以基本上是这样的:
- 具有模型-视图-控制器-存储模型的应用程序
- 当应用需要数据时,Store 类通过 url 请求数据并在该 url 中发送索引
- PHP 脚本读取索引,执行数组中保存的查询,将数据编码为 JSON,返回数据
- 应用商店类读取和解码数据
- 应用的 View 类以任何想要的方式呈现数据。
所以除了访问我的数据库、编码和返回数据之外,我并没有真正用 php 做太多事情。
由于我的应用程序变得非常大并且使用越来越多的查询,我想在我的新版本中做正确的事情。在这种情况下,什么是 PHP 使用的好模型?
我不是网络开发人员,所以我试图将所有 PHP 进程保持在最低限度,但我意识到这不是一种好的编程方式。
【问题讨论】:
-
您是想像现在一样做(简单地使用网络服务作为 API 来获取和存储数据,在设备上运行的应用程序中执行所有数据处理)还是将一些处理转移到网络中服务是一种架构选择,取决于您的应用程序的要求......如果不知道您的应用程序在做什么,就不可能说应该在哪里完成多少处理。一般来说,您可能正在尝试找到一个平衡点,以最大限度地减少设备端资源消耗(处理、内存使用和网络活动)。
-
听起来合乎逻辑。我只是希望这种事情有某种模型或例子。使用 URL 在应用程序中存储和访问查询。我现在正在做的事情看起来不像是好的编程,但话说回来,我不是网络开发人员。
-
@redreggae:虽然我完全赞成使用 RESTful API,但我认为这无助于回答 OP 关于 Web 服务和设备之间处理划分的问题。
标签: php mysql objective-c json servlets