Pytania oznaczone «interfaces»

30
Zrozumienie „programowania do interfejsu”

Często spotykałem się z terminem „programowanie interfejsu zamiast implementacji” i myślę, że rozumiem, co to znaczy. Ale chcę się upewnić, że rozumiem, jakie są korzyści i możliwe wdrożenia. „Programowanie interfejsu” oznacza, że ​​tam, gdzie to możliwe, należy odwoływać się do bardziej...

29
Nazwy interfejsu: przedrostek „Can-” vs sufiks „-Able”

Często używa się „-able” jako sufiksu dla interfejsów, np Numerowalny drukowalny, wymienny, pijalny, strzelalny, obrotowy Myślałem, że „Can-” może być lepsze, ponieważ może być bardziej opisowe. Tak, jest bardziej pracowity i dodaje szum do nazwy interfejsu. W szczególności można stosować...

22
Jak ewoluujesz i wersja interfejsu?

Załóżmy, że masz interfejs IFoo: public interface IFoo { void Bar(string s); int Quux(object o); } W wersji 2 interfejsu API musisz dodać metodę Glargdo tego interfejsu. Jak to zrobić, nie psując istniejących użytkowników interfejsu API i zachowując zgodność wsteczną? Jest to skierowane...

20
Ogólny czy wspólny interfejs?

Nie pamiętam, kiedy ostatni raz pisałem lekcje ogólne. Za każdym razem, gdy wydaje mi się, że potrzebuję go po pewnym namyśle, wyciągam wniosek, że nie. Druga odpowiedź na to pytanie sprawiła, że ​​poprosiłem o wyjaśnienia (ponieważ nie mogę jeszcze komentować, zadałem nowe pytanie). Weźmy więc...

20
Kto rozszerza interfejsy? I dlaczego?

AFAIK, moje klasy klasy extendsnadrzędne i implementsinterfejsy. Ale natrafiam na sytuację, w której nie mogę użyć implements SomeInterface. Jest to deklaracja typów ogólnych. Na przykład: public interface CallsForGrow {...} public class GrowingArrayList <T implements CallsForGrow> // BAD,...

17
Zasada najmniejszego zdziwienia (POLA) i interfejsy

Dobra ćwierć wieku temu, kiedy uczyłem się C ++, nauczono mnie, że interfejsy powinny wybaczać i, w miarę możliwości, nie przejmować się kolejnością wywoływania metod, ponieważ konsument może nie mieć dostępu do źródła lub dokumentacji zamiast to. Jednak za każdym razem, gdy mentorowałem młodszych...