Timeline for The Question Sandbox
Current License: CC BY-SA 3.0
12 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Jun 18, 2020 at 8:36 | history | edited | CommunityBot |
Commonmark migration
|
|
Feb 10, 2018 at 2:25 | comment | added | candied_orange | @BenI. Ok done. | |
Feb 9, 2018 at 23:02 | comment | added | Ben I. Mod | @CandiedOrange List questions are still, 8 months in, in an ambiguous place. We are more accepting of them than many sites, but not always, and the line has never been entirely clear. We're sort of waiting for someone to have a big "A-HA!" moment that clarifies good list from bad list within our context. If you search the CSE meta for list, you'll get a lot of discussion. This one in particular might be interesting at this moment. | |
Feb 9, 2018 at 22:11 | comment | added | candied_orange | My concern with this question is that it seems like a list question. Multiple answers could end up equally valid and no single answer seems like it could cover the issue well enough to discourage other ones. This is because there are multiple traps. But I'm new here so maybe list questions are ok. It's also not clear if what qualifies as an "object design trap" is a failure to follow the OO paradigm (which is not universal) or simply a design failure that happened while following OO perfectly fine (which happens quite a lot). | |
Feb 9, 2018 at 21:05 | comment | added | Buffy | I'll note that there is another way to "extend" without using inheritance. You can embed one object inside another (a field) and have the container provide services, some fulfilled by the wrapped object. Decorators do this in a simple way. | |
Feb 9, 2018 at 16:50 | comment | added | Buffy | Rather than just interfaces, you may want some classes. Even an app and the activity is to Refactor it (using testing, pairing, etc) into a better design. | |
Feb 9, 2018 at 16:46 | comment | added | Buffy | Many programmers ignore the Law of Demeter (often guilty myself) in the heat of battle. Doing so seems innocuous and it is hard to recognize immediately in many cases. I don't know of IDE support for it. | |
Feb 9, 2018 at 16:45 | comment | added | Buffy | I'm not sure that students can grok the real lessons of SOLID without help. A guided activity is probably best. Probably as a team based group discussion. Probably with access to the web for examples and caveats. | |
Feb 9, 2018 at 16:42 | comment | added | Buffy | The Open-Closed principle is a minefield. If you interpret it wrongly and ignore SLID, you wind up overusing inheritance in bad ways. The naive view is that inheritance is good and so inheritance from concrete classes is fine even when you change the "interface" or the semantics. The five principles work together in a better view. | |
Feb 9, 2018 at 16:39 | history | edited | Buffy | CC BY-SA 3.0 |
added 64 characters in body
|
S Feb 9, 2018 at 16:33 | history | answered | Ben I.Mod | CC BY-SA 3.0 | |
S Feb 9, 2018 at 16:33 | history | made wiki | Post Made Community Wiki by Ben I.Mod |