Bir yöntemim olduğunu varsayalım
public List<User> GetBatchOfUsers(IEnumerable<int> userIDs)
{
List<User> users = new List<User>();
// some database stuff
return users;
}
Ben bir dönüm yerine (ya IListda IEnumerable) bir arayüz dönmek daha iyi olacağını okudum List. Bunu yapmak için duyduğum bazı argümanlar, verileri gizlemesidir ve API geliştiricisine, daha sonraki bir tarihte verilerin dahili sunumunu değiştirme esnekliği kazandırır.
Sadece geri dönmekle ilgili endişem IEnumerable, rasgele erişim ve Countözellik gibi işlevselliği kaybetmenizdir .
IEnumerableBir parametrenin kabul edilmesinin mantıklı olduğunu biliyorum , çünkü tüketiciye yöntemime veri göndermek için en iyi esnekliği, yöntemin çalışması için minimalist gereksinim kümesini verir.
Dönüş türü için en iyi uygulama hangisidir?