Đó là một điều phong cách. Hiệu suất không liên quan; cả hai sản xuất mã máy gần như giống hệt nhau.
Một vài cân nhắc về phong cách:
Nếu bạn muốn tránh 'lập trình ngang', bạn có thể muốn thích B để tránh điều kiện lồng nhau. Ví dụ, nếu bạn muốn thêm trường hợp ngoại lệ mà không ảnh hưởng đến dòng chảy của phương pháp này quá nhiều:
Một:
public String getDescription(MyObject obj) {
if (obj == null) {
return "";
} else {
if (!obj.isValid()) {
return "invalid";
} else {
...
}
}
}
B:
public String getDescription(MyObject obj) {
if (obj == null) {
return "";
}
if (!obj.isValid()) {
return "invalid";
}
....
}
Nhưng sự khác biệt là tối thiểu nếu bạn hỏi tôi. Chắc chắn không xứng đáng với một 'cuộc chiến kiểu mã'.
Nguồn
2012-02-13 20:49:31
Bạn có đo lường điều này không? Bạn đã tìm được gì? – Steven
Đó là một điều phong cách. Hiệu suất không liên quan; cả hai sản xuất mã máy gần như giống hệt nhau. Nếu bạn muốn tránh 'lập trình ngang', bạn có thể muốn B để tránh điều kiện lồng nhau. –
Xem http://jsperf.com/ khi bạn có câu hỏi như thế này. Trang web rất hữu ích! – mrtsherman