簡體   English   中英

為什么要將公共異步方法的內部邏輯分為私有方法?

[英]Why should I separate internal logic of a public asynchronous method into a private method?

我一直在同一個類中看到這樣的代碼,我想不出一個理由來分離一個順序私有方法。 其他人可以給出充分的理由嗎?

 public Task<List<myObject>> GetObjectsAsync(object param)
    {
        try
        {
            return Task.Run(() => GetObject(param));
        }
        catch (Exception e)
        {
            //log error
        }
    }

以及隨之而來的私有順序方法:

private List<myObject> GetObject(object param))
    {
        return _dLayer.GetObject(param));
    }

將邏輯塊(無論它們多么小)划分為單獨的方法總是很好的。 關注點分離的范圍很窄,例如相關行為的方法和邏輯塊一樣,廣泛適用(例如,使用單獨的程序集,名稱空間和類)。 這樣一來,便可以清楚自然地看到在哪里可以將代碼重構為不同的類,以遵循SOLID中的“ S”(單一職責原則)。

保持較小的方法大小也很重要,因為它可以提高可讀性和可重用性。

我很確定這就是您編寫這種代碼的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM