2011-11-27 25 views
6

Thông thường bạn sẽ thấy một số mã như thế này khoản bảo vệ/lỗi:Anti-mẫu: Thừa khác chi nhánh chứa xử lý

public void bla() 
{ 
    if (conditionTrue) 
    { 
    // long code here 
    } else { 
    // otherwise do nothing 
    return; 
    } 
    // some more code 
} 

Các chi nhánh khác rõ ràng là một số điều khoản bảo vệ mà trượt xuống, thụt đầu dòng cho dài mã -section có thể được làm phẳng:

public void bla() 
{ 
    if (!conditionTrue) 
    return; 

    // long code here 

    // some more code 
} 

Một số chuyên gia đầu điều này bằng cách lồng những thứ thừa nếu các nhánh lên 3, 4 hoặc 5, tạo mã khó đọc.

tôi biết những nơi này bằng cách nào đó chạm vào chủ đề này:

Đây có phải là tên chống mẫu và tên của nó nếu như vậy?

Trả lời

7

Mùi giống như một mẫu Arrow Code chống mẫu

+0

đẹp ... không biết về điều đó, mặc dù tôi tránh nó là địa ngục. –

+1

Oh người đàn ông, tôi rất quen thuộc với loại mã: '( – GETah

+0

Cảm ơn cho điều này. Nhưng thực sự tôi đang tìm kiếm một tên cho mô tả khác-return-tình hình. Mã mũi tên thay vào chơi khi nói đến (đã đề cập) nhiều cấp độ thụt lề. – mdo

Các vấn đề liên quan