对iOS开发的一些个人想法

1、在iOS开发过程中,最常用到的比如UILabel、UIbutton...... 我们可以写一个公共类方法,在这个方法中设置好基本属性,当每次用的时候,就可以一句话调用,只做少量的代码添加就可以了。

//UIButton
+(UIButton *)publicCreatButtonWithTitleTextFontSize:(CGFloat)textFontSize roundSize:(CGFloat)roundSize backGroundColor:(UIColor *)backGroundColor{
    UIButton *button = [[UIButton alloc]init];
    button.layer.cornerRadius = roundSize;
    button.clipsToBounds = YES;
    button.titleLabel.font = [UIFont systemFontOfSize:textFontSize];
    button.backgroundColor = backGroundColor;
    return button;
}

2、网络请求的方法,一定要封装在一起,因为网络请求具有极强的公共属性,很多地方都会调用网络请求类GET、POST、DELETE、PUT等,提取相同属性封装起来。

//GET请求
+(id)GETURLSplice:(NSString *)urlSplice Parameters:(NSString *)parameters HTTPHeaderKey:(NSArray *)httpHeaderKey HTTPHeaderValue:(NSArray *)httpHeaderValue
          completionHandler:(void (^)(id responseObjectmodel ,NSError *error ,NSString *statusCode ,NSString *status ,NSString *code ,NSString *message))completionHandler{
    NSString *url = [self urlParameters:parameters urlSplice:urlSplice];
    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    //设置返回数据的格式
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];
    //请求头
    NSString *strq= [NSString stringWithFormat:@"%@%@%.0f%@%@",@"GET",url,[[NSDate date] timeIntervalSince1970],@"0",App_Secret];
    [manager.requestSerializer setValue:[self sha1:strq] forHTTPHeaderField:@"sign"];
    [manager.requestSerializer setValue:user_Token forHTTPHeaderField:@"access-token"];
    
    NSString *str=[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    return [manager GET:str parameters:nil progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        completionHandler(resultModel,nil,nil,nil,nil,nil);
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
      completionHandler(nil,error,statusCode,erromodel.status,erromodel.code,erromodel.message);
    }];
}

3、代码文件结构要分明,文件层次有很多方法,因人而异,因项目而异,因各种状况而异,下面我把我的文件分法展示出来(我的文件有中文,显得很low,但是自己看的时候查找内容很方便)。

文件分层
目前先写这么多,以后再补充
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,678评论 25 708
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,196评论 6 13
  • 大马七日游,不懂为何叫大马...第一次到多人种国家,基于国内的片面的新闻,看到穆斯林和阿三哥不得不说还是有些小紧张...
    duXinG丶阅读 152评论 0 1
  • 有阳光下的风 我举起右手 而你的劳作 好似这风 有阳光下的风 轻抚过我的唇 我把它当做塔蕾娅 它却 抿了我一口 有...
    深蓝儿童阅读 290评论 0 1