Pytania oznaczone «object-oriented»

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
Czy informacje ukrywają coś więcej niż konwencję?

W Javie, C # i wielu innych silnie typowanych, sprawdzanych statycznie językach, jesteśmy przyzwyczajeni do pisania takiego kodu: public void m1() { ... } protected void m2() { ... } private void m2() { ... } void m2() { ... } Niektóre dynamicznie sprawdzane języki nie zapewniają słów kluczowych...

20
Jakie są zalety wstrzykiwania zależności w przypadkach, gdy prawie wszyscy potrzebują dostępu do wspólnej struktury danych?

Istnieje wiele powodów, dla których globale są złe w OOP. Jeśli liczba lub rozmiar obiektów wymagających współdzielenia jest zbyt duża, aby można je było efektywnie przekazać w parametrach funkcji, zwykle wszyscy zalecają Wstrzykiwanie zależności zamiast obiektu globalnego. Jednak w przypadku,...

20
Różnica między wzorem a zasadą

Jaka jest różnica między wzorami projektowania obiektowego a zasadami? Czy to są różne rzeczy? O ile rozumiem, obaj starają się osiągnąć jakiś wspólny cel (np. Elastyczność). Czy mogę więc powiedzieć, że wzór jest zasadą i odwrotnie? Zasada projektu = SOLID (tj. Zasada inwersji zależności) Wzór...

20
Pusty interfejs do łączenia wielu interfejsów

Załóżmy, że masz dwa interfejsy: interface Readable { public void read(); } interface Writable { public void write(); } W niektórych przypadkach obiekty implementujące mogą obsługiwać tylko jeden z nich, ale w wielu przypadkach implementacje będą obsługiwały oba interfejsy. Ludzie...

19
C ++ do znajomego lub nie do znajomego

W tym semestrze na studiach mam programowanie obiektowe z kursem c ++ i uczyliśmy się o funkcjach przyjaciela. Instynktownie ich nie lubię za to, że potrafią ominąć zabezpieczenia zapewniane przez enkapsulację i ukrywanie danych. Przeczytałem kilka artykułów w Internecie, a niektórzy uważali, że...