Załóżmy, że mam metodę public List<User> GetBatchOfUsers(IEnumerable<int> userIDs) { List<User> users = new List<User>(); // some database stuff return users; } Przeczytałem, że lepiej byłoby zwrócić interfejs (albo IListalbo IEnumerable), niż zwrócić a List. Niektóre argumenty, które słyszałem, to to, że ukrywa dane i daje programistom API elastyczność zmiany wewnętrznej …
Myślę, że rozumiem rzeczywiste ograniczenia polimorfizmu w czasie kompilacji i polimorfizmu w czasie wykonywania. Ale jakie są koncepcyjne różnice między jawnymi interfejsami (polimorfizm w czasie wykonywania, tj. Funkcje wirtualne i wskaźniki / referencje) a interfejsami niejawnymi (polimorfizm w czasie kompilacji, tj. Szablony) . Uważam, że dwa obiekty, które oferują ten …
Moim celem jest zdefiniowanie umów między klasami. Lubię pisanie kaczką i wszystko, ale chciałbym również zdefiniować interfejs między różnymi warstwami mojej aplikacji, aby jasno określić, które są metodą wywoływania z zewnętrznego, a które to metody dodatkowe, których nie powinna używać druga warstwa . Na przykład w Javie mogę zdefiniować interfejs …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.