java - 为简单的数据结构创建单独的类在 Objective-C 中是矫枉过正的

标签 java objective-c ios json web-services

我在 Objective-C 中创建简单的 Web 服务客户端,发现为每种 Web 服务的响应创建单独的类可能有点矫枉过正。也许这是因为 Objective-C 有两个文件 - H&M。

以下是来自网络服务的响应示例:

{"name": "John", status: "OK"}

{"total": "5500", status: "OK"}

或更复杂

{"location": {"x": "140", "y": "90", "z": "0"}, 
 "color": "red", status: "OK"}

我想为每个响应创建单独的类,例如NameResponse、TotalResponse、LocationInfoResponse 并从 Response 类继承它们。

我确信在 Java 中创建一些类会非常紧凑,但不确定 Objective-C。

更新 1 使用类而不是 NSDictionary 的原因之一是代码更安全且定义更好,例如:

我觉得

response.name

优于

json valueForKey: "name"

不是吗?

请在答案中说明你会怎么做,在这种情况下,每个响应的类是否过大?

最佳答案

明确指定数据模型永远不会过大。正式数据类型是最好的规范——它们已经实现了!

如果 Web 服务响应在应用程序的层之间传输,请使用类。如果它们的使用范围足够小,NSDictionary 可能是可以接受的。

关于java - 为简单的数据结构创建单独的类在 Objective-C 中是矫枉过正的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7921260/

相关文章:

ios - 如果您在事先同意通知后禁用通知,Apple 如何处理推送 token ?

ios - 设置以编程方式创建的 View 的最佳位置在哪里?

java - 用 Java 重写 Gimli_hash

java - 在 Akka 中向 BroadcastGroup 添加新地址

java - 泛型类的注释参数

ios - 了解委托(delegate)与 block 。 (重构代码以使用委托(delegate)而不是 block )

iphone - 以编程方式为网格中的单元格着色

ios - 为什么导航 View Controller 返回零 View Controller ?

java - 将 Collection<Dependant Interface> 转换为 Collection<Root Interface> 失败

ios - NSDate。抓取今天之前的所有日期