
Object-Oriented Software Construction presents the methods and techniques of object-oriented design, based on a careful assessment of the underlying software-engineering issues. The book reviews both the techniques needed to obtain the full extent of the approach and object-oriented systems design, with emphasis on effective module-interface design. Numerous examples of reusable software components are presented covering many of the important everyday programming structures. The ideas and concepts are made concrete by realizing them in the Eiffel object-oriented programming language. (Back cover copy)
You are spewing nonsense.
Read Bertrand Meyer's Object-Oriented Software Construction, Barbara Liskov's Program Development in Java: Abstraction, Specification, and Object-Oriented Design and Brad Cox's Object-Oriented Programming: An Evolutionary Approach for edification on OOD/OOP.
What are people's thoughts about it?
I know a little about its history, and had tried it out a bit, some years ago, via the EiffelStudio trial edition, IIRC. I had also read a good chunk of Bertrand Meyer's book, Object Oriented Software Construction. Thought the book was good.
LSP (https://en.wikipedia.org/wiki/Liskov_substitution_principle) has to do with behavioural subtyping guaranteeing semantic interoperability between types in a hierarchy. It involves not just the syntax of function signatures but their semantic meaning involving Variance/Invariance/Covariance/Contravariance and their guarantees using an extension to Hoare Logic i.e. Preconditions/Postconditions/Invariants (derived from Meyer's DbC). Thus without enforcing the latter (which is generally done via documentation since there is no syntax for expressing pre/post/inv directly in most languages) the former is incomplete and thus the complete contract is easily missed/forgotten leading to the mistaken belief "Inheritance is bad". The LSP wikipedia page links to all the concepts, the original papers and more for further clarification.
See also Bertrand Meyer's Using Inheritance Well from his book Object Oriented Software Construction, second edition book - https://archive.eiffel.com/doc/manuals/technology/oosc/inher...
Finally see Barbara Liskov's own book (with John Guttag) Program Development in Java: Abstraction, Specification, and Object-Oriented Design for a "correct approach" to OOP. Note that Java is just used as a example language while the principles are language independent.
I had used assertions a fair amount in C projects years ago, so the DbC feature of Eiffel is what initially got me interested in it.
But it has many other good language features, IMO.
I had also read a good chunk of the Object-Oriented Software construction book by Bertrand Meyer, creator of Eiffel, again some years ago.
That book was quite good too (and quite thick) and, IIRC, it is still available as a free download on the net.
Brad Cox's above book and Bertrand Meyer's Object-Oriented Software Construction (using the Eiffel language) were my guides to Object-Oriented Design/Programming and Software Engineering in general and i am eternally grateful to them.