技术宅,fat-man

增加语言的了解程度可以避免写出愚蠢的代码

导航

一个消除if语句的例子

// 一个按钮点击事件,判断点击按钮是那一个显示出他的信息

- (IBAction)buttonPressed:(id)sender {
    if (sender == self.leftButton) {
        NSLog(@"%@", self.leftButton.currentTitle);
        self.labelMessage.text = self.leftButton.currentTitle;
    }
    else{
        NSLog(@"%@", self.rightButton.currentTitle);
        self.labelMessage.text = self.rightButton.currentTitle;
    }
}

其实这个代码就写的笨了,我们应该努力的消除if语句,下面这个就很好:

- (IBAction)buttonPressed:(id)sender {
    UIButton *button = (UIButton*)sender;
    NSLog(button.currentTitle);
    self.labelMessage.text = button.currentTitle;
}

短短三行代码就ok了,如果需求不是这么简单,直接转换处理无法满足需求怎么办?那么等有了具体的需求再说,具体问题具体分析,精神是尽可能的在满足需求的情况下消除if语句,也许可以消除也许不可以,掌握一条精髓就是尽可能的降低复杂度

posted on 2014-07-15 19:04  codestyle  阅读(1291)  评论(0编辑  收藏  举报