public List<ItemDetail> queryItemDetails(List<Cart> carts){ ItemRepository itemRepository=...; List<ItemDetail> result = List.newArrayList(); List<SkuId> ids = buildItemSkuIds(carts); result = itemReposioty.query(itemSkuIds);
//Do some additional things to the result...
return result; }
無心義地的擴大方法的依賴。在本例中, queryItemDetail中其實僅僅用到了carts的中的id屬性,卻須要調用者傳入整個carts列表,無謂地使得該方法所依賴的參數擴大了。一樣List<T>這個參數類型也沒有太大意義,Iterable<T>極可能就足夠了。ui