Обычно я стараюсь, чтобы мои экземпляры объектов соответствовали Принцип замены Лискова, но я всегда думал, что люди думают LSP должен также применяться к конструкторам?
Я пробовал искать походы для этого, но я не смог найти никаких сильных мнений в любом случае.
Я должен отметить, что большая часть моего кодирования находится в Ruby, но иногда я обнаруживаю, что мои конструкторы подкласса немного отличаются от родительского класса. Они используют один и тот же базовый набор аргументов, а часто и дополнительные аргументы. Иногда это также происходит с другими методами класса.
В задней части моей головы это всегда было похоже на нарушение LSP, но я хотел посмотреть, чувствует ли кто-то еще этот способ тоже.