Programowanie obiektowe to paradygmat programowania wykorzystujący „obiekty”: struktury danych składające się z pól danych i metod wraz z ich interakcjami.
Inwersja kontroli (IoC) może być dość myląca, gdy zostanie po raz pierwszy napotkana. Co to jest? Który problem rozwiązuje? Kiedy należy używać, a kiedy nie?
Jaka jest różnica między funkcją abstrakcyjną a funkcją wirtualną? W jakich przypadkach zaleca się stosowanie wirtualnych lub abstrakcyjnych? Które z nich jest najlepsze?
Jaka jest zaleta używania metod pobierających i ustawiających - które tylko pobierają i ustawiają - zamiast po prostu używania pól publicznych dla tych zmiennych? Jeśli osoby pobierające i ustawiające kiedykolwiek robią coś więcej niż zwykłe polecenie get / set, mogę to szybko rozgryźć, ale nie jestem w 100% pewien, jak: …
Niedawno miałem dwa wywiady telefoniczne, w których zapytano mnie o różnice między klasą interfejsu a klasą abstrakcyjną. Wyjaśniłem każdy aspekt, o którym mogłem pomyśleć, ale wygląda na to, że czekają, aż wymienię coś konkretnego i nie wiem, co to jest. Z mojego doświadczenia wynika, że następujące są prawdziwe. Jeśli brakuje …
Planując swoje programy, często zaczynam od takiego łańcucha myśli: Drużyna piłkarska to tylko lista piłkarzy. Dlatego powinienem to przedstawić za pomocą: var football_team = new List<FootballPlayer>(); Kolejność na tej liście odpowiada kolejności, w jakiej gracze są umieszczeni na liście. Ale później zdaję sobie sprawę, że drużyny mają także inne właściwości, …
Czy ktoś może wyjaśnić dokładne znaczenie wiodących znaków podkreślenia przed nazwą obiektu w Pythonie i różnicę między nimi? Ponadto, czy to znaczenie pozostaje takie samo, czy przedmiotowy obiekt jest zmienną, funkcją, metodą itp.?
Jakie są różnice między tymi dwoma fragmentami kodu? Używanie type(): import types if type(a) is types.DictType: do_something() if type(b) in types.StringTypes: do_something_else() Używanie isinstance(): if isinstance(a, dict): do_something() if isinstance(b, str) or isinstance(b, unicode): do_something_else()
Czy istnieje powód, dla którego deklaracja klasy może dziedziczyć object? Właśnie znalazłem kod, który to robi i nie mogę znaleźć dobrego powodu, dla którego to zrobiłbym. class MyClass(object): # class code follows...
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.