美文网首页
重点:代码规范

重点:代码规范

作者: 健尐 | 来源:发表于2016-08-04 10:56 被阅读28次

命名可以统一的

无论在哪个xxx.m中:
凡是定义UITableView的命名都是tableView
凡是UITextField的命名都是textField
凡是表视图的数组命名都是dataBase

Get/Set方法放在最后

#pragma mark - Get/Set方法
    - (NSMutableArray *)dataBase {
        if(!_dataBase) {
            _dataBase = [[NSMutableArray alloc] init];
        }
        return _dataBase;
    }
@end

全部协议的方法放在同一个范围,#pragma mark - Delegate

#pragma mark - Delegate
#pragma mark -- UITableViewDataSource
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
#pragma mark -- UITableViewDelegate
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

尽量少用Block; 多用协议方法(大神博客都是这样说的)

1.Block扩展性低,比如突然增加一个方法又要增加一个Block
2.Block容易循环引用,在MJRefresh.h中的footerWithRefreshingBlock里面需要把self改为弱引用
3.(^)的写法楼主总是忘记了

属性NS头的用懒加载; 属性UI头的写生成方法

#import "ViewController.h"
@interface ViewController ()<UITableViewDataSource,UITableViewDelegate>
/** 表视图 */
@property (nonatomic,strong)UITableView *tableView;
/** 数据源 */
@property (nonatomic,strong)NSMutableArray *dataBase;
@end

@implementation ViewController
- (void)viewDidLoad {
  [self createTableView];
}
#pragma mark - 设置UI
-(void)createTableView{
  _tableView = [[UITableView alloc]initWithFrame:self.view.bounds style:(UITableViewStylePlain)];
  [self.view addSubview:_tableView];
  _tableView.dataSource = self;
  _tableView.delegate = self;
}

#pragma mark - Get/Set方法
- (NSMutableArray *)dataBase {
  if(!_dataBase) {
      _dataBase = [[NSMutableArray alloc] init];
  }
  return _dataBase;
}
@end

公用方法,触发方法和接口方法各自放在同一个范围

#pragma mark - 触发方法
  1. 手势的触发
  2. 控制器的触发
#pragma mark - 公用方法
  1. 公用的逻辑方法
  2. 公用的UI布局方法
#pragma mark - 接口方法
  1. 一堆接口方法

怎么写代码速度才速度快?

1. [UITableView alloc]initWithFrame:(CGRect) style:(UITableViewStyle) 
      (UITableViewStyle)参数回车或鼠标直接点击它,令它成(UITableViewStyle)后在e加P自动补全UITableViewStylePlain
2. 有人喜欢用FuzzyAutocompletePlugin代码自动补全
    下载地址:<https://github.com/chendo/FuzzyAutocompletePlugin>

注释写多不会死的

/** 表视图 */
@property (nonatomic,strong)UITableView *tableView;
/** 增加按钮方法 */
-(void)addBtnDidClick{
  NSLog(@"点击了增加按钮");
}

在.h文件中的声明顺序

1. 写属性
2. 写类方法
3. 写实例方法
4.写其他,比如协议方法(外国人说的)
* 值得注意的是strong不能省,虽然现在是默认是强引用类型,说不定以后苹果又改了默认(有更好的自动内存管理)

也有人喜欢UI和NS分开写,如下
@interface ViewController (){
    /** 表视图 */
    UITableView *_tableView;
}
/** 数据源 */
@property (nonatomic,strong)NSMutableArray *dataBase;
@end

相关文章

  • 重点:代码规范

    命名可以统一的 Get/Set方法放在最后 全部协议的方法放在同一个范围,#pragma mark - Deleg...

  • Web 端代码规范

    目录 1、代码规范概述 2、代码规范流程搭建 3、代码规范细则 1、代码规范概述 良好的代码规范能够提供软件的可读...

  • 代码规范

    代码规范 1. 概述 欢迎使用前端代码规范, 这里借鉴、引用的是京东前端代码规范。 遵循代码规范的目的在于增强团队...

  • iOS 代码规范篇

    iOS 代码规范篇 iOS 代码规范篇

  • iOS(OC)开发之随感

    1.代码规范 规范很重要!规范很重要!规范很重要! 代码规范的重要性之-为什么谷歌要执行严格的代码编写规范http...

  • 前端学习的基本总结

    目录 1.为什要遵守代码规范 2.css代码规范 3.js代码规范与设计模式3.1 js代码规范3.2 设计模式 ...

  • 乐乎项目优化

    编程: 1、代码规范。架构规范、文件组织规范、命名规范、代码逻辑规范、资源存放。 一、使用cocoapod 二、代...

  • 小肤iOS开发代码规范_v1.0

    For Objective-C , 2018.8.2 Ⅰ.前言Ⅱ.命名规范Ⅲ.代码注释规范Ⅳ.代码格式化规范Ⅴ....

  • 代码规范

    代码规范 1. 概述 欢迎使用代码规范, 这个是我借鉴京东前端代码规范,组织的内部规范。旨在增强团队开发协作、提高...

  • PSR-2- Coding Style Guide 编码风格规范

    代码风格规范 本篇规范是 PSR-1 基本代码规范的继承与扩展。 本规范希望通过制定一系列规范化PHP代码的规则,...

网友评论

      本文标题:重点:代码规范

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