Note that there are some explanatory texts on larger screens.

plurals
  1. USmartinr
    primarykey
    data
    text
    plurals
    1. COYou can separate the strictness of Liskov from what it is strict about. In C# there is more to be strict about because you have more formal interface definitions, whereas in ECMAScript there is less. I think Liskov applies equally as a pure principle, but what power the compiler/interpreter has to enforce or encourage Liskov differs between languages, and that the desirability of following Liskov will depend on the width of your object hierarchy and LOC count.
      singulars
    2. COI think interface contracts are less important in group 1 BECAUSE the focus in writing in a group 1 language (tends to be / ) is on object data (making it more likely that programmers are mentally checking parameter names, which are the more variable element of function signatures than method names) whereas when writing group 2 code, the focus is on method names, so the compiler needs to provide more backup in checking function signatures. Just my $0.02.
      singulars
    3. COIt's a question of how you define object! In either a group 1 or group 2 context, what an object is is proscribed by the language tool, though the designer is free (although explaining to another person is harder!) to use any conceptual map to define objects and object-boundaries. I suspect this debate is really about "what happens in practice - what is the list of principles and patterns that get used by necessity in group 1 language projects vs group 2 language projects".
      singulars
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload