Что такое метаклассы и для чего мы их используем?
В чем разница между функцией, украшенной @staticmethod
, и функцией, украшенной @classmethod
?
Я пытаюсь понять использование super()
. По внешнему виду, оба дочерних класса могут быть созданы, просто отлично.
Мне любопытно узнать о фактической разнице между следующими двумя дочерними классами.
class Base(object):
def __init__(self):
print "Base created"
class ChildA(Base):
def __init__(self):
Base.__init__(self)
... В чем именно разница между интерфейсом и абстрактным классом?
Может кто-то предоставить простое объяснение методов против функции в контексте ООП?
Инверсия управления (или IoC) может привести к путанице при первом обнаружении.
Почему предпочитают композицию наследованию? Какие компромиссы существуют для каждого подхода? Когда следует выбирать наследование над композицией?
В чем разница между абстрактной функцией и виртуальной функцией? В каких случаях рекомендуется использовать виртуальный или абстрактный? Какой подход более правильный?
В чем преимущество использования методов получения и установки - которые только получают и устанавливают - вместо простого использования открытых полей для этих переменных?
Если геттеры и сеттеры когда-либо делают больше, чем просто получают / устанавливают, я могу понять это очень
...Недавно у меня было два телефонных интервью, где меня спрашивали о различиях между интерфейсом и абстрактным классом. Я объяснил каждый их аспект, который мог придумать, но, похоже, они ждут, чтобы я упомянул что-то конкретное, и я не знаю, что это
...Я новичок в iOS и Objective-C и во всей парадигме MVC, и я застрял со следующим:
У меня есть представление, которое действует как форма ввода данных, и я хочу дать пользователю возможность выбрать несколько продуктов. Продукты перечислены в другом представлении
...Каковы различия между этими двумя фрагментами кода? Используя type()
:
import types
if type(a) is types.DictType:
do_something()
if type(b) in types.StringTypes:
do_something_else()
с использованием isinstance()
:
if isinstance(a, dict):
do_something()
if isinstance(b, str) or isinstance(b, unicode):
do_something_else()
Какова цель слова self
в Python? Я понимаю, что это относится к конкретному объекту, созданному из этого класса, но я не понимаю, почему его необходимо явно добавлять в каждую функцию в качестве параметра. Для иллюстрации, в Ruby я могу сделать
В чем разница между старым и новым стилем классов в Python? Есть ли когда-нибудь причина использовать классы старого стиля в наши дни?
В " Programming Python " Марк Лутц упоминает "mixins". Я из C / C ++ / C # фона, и я не слышал этот термин раньше. Что такое миксин?
Читая между строк в этом примере (с которым я связан, потому
...В каких случаях лучше использовать struct
против class
в C ++?
Когда я должен использовать интерфейс и когда я должен использовать базовый класс?
Должен ли он всегда быть интерфейсом, если я не хочу на самом деле определять базовую реализацию методов?
Если у меня есть класс собак и кошек. Почему я хотел
...Я слышал, что принцип подстановки Лискова (LSP) является фундаментальным принципом объектно-ориентированного проектирования. Что это такое и каковы некоторые примеры его использования?
Я изучаю шаблоны проектирования Java GoF и хочу увидеть некоторые из них в реальной жизни. Каковы хорошие примеры этих шаблонов проектирования в основных библиотеках Java?
Я предпочитаю использовать ООП в крупных проектах, таких как тот, над которым я сейчас работаю. Мне нужно создать несколько классов в JavaScript, но, если я не ошибаюсь, есть по крайней мере несколько способов сделать это. Каков будет синтаксис и почему
...