编写 iOS 与 OS X 代码优秀架构的有效方法 一:入口收敛
2017-08-09 本文已影响32人
公爵海恩庭斯
灵感来自于 Effective Objective-C 2.0,海恩决定总结记录自己在工作中遇到并解决问题后的所思所想。
功能的入口应该尽量收敛,因为:
- 通过重写子类的方式来控制行为时,只需要重写收敛入口的那个类,并且只需要重写一个方法;
- 实现方法时,只需要考虑当前一种情况,而非多种复杂情况;
- 功能下线时,代码删除风险相对较小;
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
{
}
}