编写 iOS 与 OS X 代码优秀架构的有效方法 一:入口收敛

2017-08-09  本文已影响32人  公爵海恩庭斯

灵感来自于 Effective Objective-C 2.0,海恩决定总结记录自己在工作中遇到并解决问题后的所思所想。

功能的入口应该尽量收敛,因为:

  1. 通过重写子类的方式来控制行为时,只需要重写收敛入口的那个类,并且只需要重写一个方法;
  2. 实现方法时,只需要考虑当前一种情况,而非多种复杂情况;
  3. 功能下线时,代码删除风险相对较小;

preferred:

- (void)setupWithFeatureEnable
{

}

- (void)setupWithFeatureDisable
{

}

- (void)viewDidLoad
{
    if (feature_enable)
    {
        [self setupWithFeatureEnable];
    }
    else
    {
        [self setupWithFeatureDisable];
    }
}

not preferred:

- (void)setup
{

}

- (void)viewDidLoad
{
    [self setup];
}

- (void)methodA
{
    if (feature_enable)
    {

    }
    else
    {

    }
}

- (void)methodB
{
    if (feature_enable)
    {
        
    }
    else
    {
        
    }
}
上一篇下一篇

猜你喜欢

热点阅读