0

私が作成しているアプリケーションの一部のモジュールでは、データセットをフィルター処理して結果をページ分割するオプションがユーザーに提供されます。

すべてが意図したとおりに機能するようになった後、コードの重複を取り除くためにコードをリファクタリングしようとしています。

前述のモジュールはすべて、フィルタリングとページネーションのために同じロジックを共有しています。

そのような重複を取り除くために、どのベストプラクティスに従うべきか疑問に思っています。

今のところ、次の API を使用して「フィルターとページネーション」サービスを作成することを考えていました。

  • Paginate(items,predicate,itemsPerPage) 次のオブジェクトを返します: { paginatedItems nrOfPages }

Predicate は、コレクションに渡されたすべてのアイテムに対して呼び出され、ユーザーの好みに基づいてアイテムを選択するために使用されます。

これで、各モジュールがその API を利用できるようになります。

より良い、推奨される方法はありますか?

よろしくお願いいたします。

4

0 に答える 0