1

私はインターフェースを持っていますIPager

public interface IPager
{
    int RecordCount { get; }
    int PageNumber { get; }
    int PageSize { get; }
}

public static class PagerExtensions
{
    public static int GetPageCount(this IPager pager)
    {
        var totalPages = pager.RecordCount / pager.PageSize;
        if (pager.RecordCount % pager.PageSize > 0)
            totalPages += 1;
        return totalPages;
    }
}

GetTotalPagesよりも従来のように聞こえGetPageCountますか?

4

5 に答える 5

6

私には、GetPageCount の方がよく聞こえます。これは、Linq 拡張機能のようx.Count なコードの通常の使用法に近いためです。x.Count()

そして、それはそれ自体を明確に説明しています。Get- のように、何かを返します。Page- 問題の変数、およびCount- 問題の変数に適用されたときに戻り値が返されるメソッドのように。

于 2013-02-06T14:08:22.363 に答える
4

一般的に: 最も意味のある名前を選びました。

この場合GetPageCount、それは自己記述的であり、の ようなものを返す可能性があるのintとは異なり、型を意味するため、使用します。GetTotalPagesIEnumerable<Page>

GetPageCountまた、次の順序に従います。

  • それはゲッター/セッターですか?-> 取得
  • 一般的に get/set とは何ですか? -> ページ
  • 特にget/setとは何ですか?->カウント

この順序により、探しているものを見つけやすくなります。

于 2013-02-06T14:11:04.237 に答える
1

なぜ単純ではないのですCount()か?

を実装するものを拡張しましたIPager。おそらく、メソッドはページをさらに拡張する必要はありません。

の場合はList<T>お受けできCountませんGetTCount()

それは本当に個人的な好みです。IPager interfaceyourを実際には ではない別の型に実装するとどうなりますPageか?

于 2013-02-06T14:10:00.977 に答える
1

コードは「自己文書化」する必要があるため、その機能を説明する名前を使用しても問題ありません。次の担当者が、1000 ページのドキュメントを読まなくても、あなたが考えていたことを理解している限り、あなたは仕事をしたことになります。

于 2013-02-06T14:11:31.793 に答える
0

正直あまり差はないと思います。あなたまたはあなたの会社が好むものを使用してください。

于 2013-02-06T14:08:38.810 に答える