我的问题是,我正在处理一个返回对象信息的RESTful API,在编写表示它们的类时,我不确定如何最好地处理每个变量可用性的所有可能性。据我所知,有5种可能性:信息
我请求关于法案的信息,其中包含有关发起立法者的存根。最终,我需要请求有关该立法者的所有信息。并非所有立法者都拥有所有信息。众议院的成员不会有参议院班级(参议员的六年任期错开,每两年有三分之一过期,众议院每两年完全重新选举)。有些人没有Twitter ID,只是因为他们没有。当然,如果我已经请求了信息,就不应再次尝试请求。
我看到了几个选项:
[注意:我正在使用Objective-C工作,但这并不一定特定于该语言。]
- 可用
- 未被请求
- 正在请求(异步)
- 不可用
- 不适用
我请求关于法案的信息,其中包含有关发起立法者的存根。最终,我需要请求有关该立法者的所有信息。并非所有立法者都拥有所有信息。众议院的成员不会有参议院班级(参议员的六年任期错开,每两年有三分之一过期,众议院每两年完全重新选举)。有些人没有Twitter ID,只是因为他们没有。当然,如果我已经请求了信息,就不应再次尝试请求。
我看到了几个选项:
- 我可以创建一个Legislator对象,并填充它所拥有的信息,但是我必须有一些跟踪getter和setter信息可用性的机制。这就是我现在正在做的,但它需要大量重复的代码。
- 我可以为缩写对象创建一个单独的类,并在获得更多信息时使用不可变的“完整”对象替换它们,但是然后我必须非常小心地替换所有对它们的引用,并且还要经历许多困难,尤其是不可用和不适用的信息。
[注意:我正在使用Objective-C工作,但这并不一定特定于该语言。]