我已經由其他人啓動的多個項目的工作,並有一件事我還沒有真正理解..(Java)開發人員爲什麼會這樣做?
1)有時我看到一個代碼片段是這樣的:
public String retrieveSomething(){
String result;
result = doSomethingAndReturnTheResult();
return result;
}
2)我個人已經習慣了這種來代替:
public String retrieveSomething(){
return doSomethingAndReturnTheResult();
}
3)但是,從一個老鄉開發商我聽說這是更好地做到這一點,而不是關於調試/斷點,我認爲這確實是一個公平點:
public String retrieveSomething(){
String result = doSomethingAndReturnTheResult();
return result;
}
我可以理解第三個選項,但我經常從多個開發人員那裏看到第一個選項,我只是不明白它。:S我能想到的唯一原因是IDE中的對齊,它是
String result =
doSomethingAndReturnTheResult();
與:
String result;
result = doSomethingAndReturnTheResult();
但除此之外,我沒有看到目的之間的差異。是否有其他人按照第一個例子顯示,如果是:爲什麼?或者你有一個合理的理由,爲什麼開發者可能會這樣做?我個人認爲這隻會增加干擾和使得它比第三個例子的可讀性,但是這可能只是我..
我知道這可能是相當的意見爲基礎/引發討論,但可以基本將問題翻譯爲:使用示例1而不是示例3(如果有)的額外用途是什麼?
在SO上也沒有合適的標籤。
也許他們是前C開發人員?第一個我沒有看到任何優勢。我使用第三種情況需要快速檢查值,或者稍後添加另一個計算步驟。 – Carcigenicate
我只能假設這是人們做的事情,他們有語言背景,被認爲是分別進行聲明和初始化的最佳做法(C,也許?) – domsson
我個人認爲:使代碼更加複雜或難以按順序閱讀以幫助調試只是意味着更多的錯誤來調試。首先儘可能簡化代碼,然後擔心調試。 – Brandon