История изменений
Исправление alysnix, (текущая версия) :
Лискова сформулировала принцип, тот, согласно которому для принятия решения о возможности наследования важны не только свойства тех объектов, которые вы моделируете в программе, но и их поведение с точки зрения внешней по отношению к ним программе.
лискова(да и хрен с ней, слишком часто она упоминается уже) просто сформулировала, какое отношение классов A и Б можно называть наследованием, сформулировала для этого некий типа «инвариант».
а именно - подстановка обьекта наследующего класса вместо наследуемого является формально корректной, и потому допустимой в языке с ооп.
чего воду в ступе толочь-то?
касаемо раста с трейтами, подстановка «класса A» реализующего те же трейты что и класс В является, насколько я понимаю ваш раст, формально корректной.
в с++ сам принцип наследования делает наследника автоматически реализующим те же соглашения что и базовый класс, и потому тут правило лисковой удовлетворяется автоматом. без рукоблудной реализации тех же трейтов как в расте.
Исходная версия alysnix, :
Лискова сформулировала принцип, тот, согласно которому для принятия решения о возможности наследования важны не только свойства тех объектов, которые вы моделируете в программе, но и их поведение с точки зрения внешней по отношению к ним программе.
лискова(да и хрен с ней, слишком часто она упоминается уже) просто сформулировала, какое отношение классов A и Б можно называть наследованием, сформулировала для этого некий типа «инвариант».
а именно - подстановка обьекта наследующего класса вместо наследуемого является формально корректной, и потому допустимой в языке с ооп.
чего воду в ступе толочь-то?
касаемо раста с трейтами, подстановка «класса A» реализующего те же трейты что и класс В является насколько, я понимаю ваш раст, формально корректной.
в с++ сам принцип наследования делает наследника автоматически реализующим те же соглашения что и базовый класс, и потому тут правило лисковой удовлетворяется автоматом. без рукоблудной реализации тех же трейтов как в расте.