我正在开发一个使用AFNetworking 2.0进行REST通信的IOS项目。我很想知道是否有一个好的设计模式将请求/响应包装为单个类。我想创建一个基类,比如AbstractHTTPRequest
,它具有基本完成代码(即请求成功,检查等),这对所有AbstractHTTPRequest
派生类都是通用的。
其中一个派生类将是一个派生自AbstractHTTPRequest的注册请求(SignupHTTPRequest
)。然后我希望有一个“客户端”类,其中包含与每个请求相对应的方法,例如:
@interface MyHTTPClient
(SignupHTTPRequest *) newSignupRequest...;
@end
我想知道是否有其他人将AFNetworking使用的NSURLSessionDataTask
/ NSURLRequest
等类包装成我想要的一组连贯的类。对我来说,将整个事物(逻辑,数据等)封装到一个类中是很重要的,但到目前为止,大多数尝试都是完全混乱的,我对此并不满意。凌乱的一点与大多数方法意味着两组完成块的事实有关。泛型类(AbstractHTTPRequest
)用于AFNetworking完成的一个,然后是使用实际HTTPRequest的代码的另一个集合。你最终得到了这个讨厌的完成块链。
有什么想法吗?
[R
答案 0 :(得分:0)
[思想...]
1)冯军胜。所以你想标记某些"类"代码总是调用一些默认的方便方法?这是我看到的关系:
从人的角度来说,我会"委托"一个总是由person1完成的任务,因为他的角色是"定义"和我一起工作的时候。"
为代理创建objective-c协议是否有帮助?我提醒过漂亮的Python装饰者,但不能完全翻译它。
2)我读过你正在尝试的BTL是否正确...最后阻止不分青红皂白地运行公共电话?