美文网首页
程序架构设计方案之1--解耦合

程序架构设计方案之1--解耦合

作者: Rainqin | 来源:发表于2016-04-21 14:02 被阅读195次

程序代码解耦合好处多多:
1:程序的可复用
2:可测试
3:整洁
4:减少文件关联

下面以我的代码为实例(代码一般,请喷):
'''

import "NetManger.h"

import "BaseModel.h"

import <objc/runtime.h>

import "AFNetRequest.h"

@implementation NetManger
+(instancetype)shareInstance{
static NetManger* manger;
if (!manger) {
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
manger = [[self alloc] init];
});
}
return manger;
}
-(id)getDataFromServer:(NSDictionary)dic className:(NSString)className urlKey:(NSString)urlKey complete:(void (^)(id))complete failed:(void (^)(NSError))failed error:(void(^)(id ))error{

id  newClass=   [[NSClassFromString(className) alloc] init];

BaseModel *base = [BaseModel new];
base = (BaseModel*)newClass;

[AFNetRequest postData:urlKey data:dic sucess:^(id responseObject) {
    
    ResponseData* data = [self parseAll:responseObject];
    if ([responseObject[@"code"] integerValue] == 0) {
        complete([base initWithDictionary:data.data]);
    }else{
        error(responseObject);
    }
    
} failure:^(NSError *error) {
    failed(error);
}];


return nil;

}

-(ResponseData)parseAll:(id)responseObject{
NSDictionary
jsonResult = responseObject;
ResponseData* data = [[ResponseData alloc] initWithDictionary:jsonResult];

NSDictionary* dic = [jsonResult dictionaryValueForKey:@"result"];
data.data = dic;
if (dic.count == 0) {
    NSArray *array = [jsonResult arrayValueForKey:@"result"];
    data.data = array;
}

return data;

}

@end

'''

相关文章

  • 程序架构设计方案之1--解耦合

    程序代码解耦合好处多多:1:程序的可复用2:可测试3:整洁4:减少文件关联 下面以我的代码为实例(代码一般,请喷)...

  • 基于彻底解耦合的实验性iOS架构

    基于彻底解耦合的实验性iOS架构 基于彻底解耦合的实验性iOS架构

  • Spring

    1.程序的耦合 耦合:程序间的依赖 解耦:降低程序间的依赖关系 实际开发中应该做到:编译期不依赖,运行时才依赖 解...

  • Spring笔记

    1、程序的耦合:耦合:程序间的依赖关系包括:(1)类之间的依赖 (2)方法间的依赖2、解耦:降低程序间的依赖...

  • 架构相关

    架构相关 图片缓存 阅读时长统计 复杂页面架构 客户端整体架构 架构&框架 模块化 分层 解耦 降低代码耦合度 图...

  • 耦合和解耦合

    程序的耦合 耦合:程序间的依赖关系包括:类之间的依赖方法间的依赖 解耦:降低程序间的依赖关系 实际开发中应该做到:...

  • iOS架构之耦合

    互相耦合 delegate notification eg:经理有一个任务要交给员工完成需要Manager和E...

  • Message和Events的区别(消息和事件的区别)

    应用程序解耦合是个必然的趋势,解耦合以后可以更具有弹性、容错率也更高。为实现这一点,Message和events必...

  • MVC

    架构的中心就是 耦合解耦 :使不同的类或不同的模块之间交互影响越少,常用的解耦方式 Delegate Na...

  • 代码重构之解耦合

    最近在对业务代码进行重构,遇到了一些比较典型的“散发着难闻味道”的代码,可以用又臭又长来形容。 这部分的业务是发布...

网友评论

      本文标题:程序架构设计方案之1--解耦合

      本文链接:https://www.haomeiwen.com/subject/bhutrttx.html