Class/instance/prototypes
Posted: Jul 16th, '17, 13:01
Assumption: Scratch and its cloning mechanism are a form of prototyping
If this is true and GP wants to use the Class/Instance model instead then I don't think it should have default instances of classes - all instantiation should be done at program run-time or by manual addition by use of a + button
I've obviously only been thinking about this for a few weeks but I'm wanting to able to simply, consistently and clearly explain the new class/instance model to Scratchers
Having an automatic instance of a class seems to fudge the model being promoted and something inside me goes - this isn't quite right.
My Suggestion (always have a suggestion if you don't like something is something I always promote)
If (for reasons of low-barrier to entry) MyClass has to have a default instance, then when creating any other classes - don't have default instances
This way, we could maintain the initial friendliness shared by the other major block programming languages but quickly move on to using the class/instance model fully
For completeness, ability to remove the default instance (inc MyClass one) should be explicitly allowed (with possible warning that last instance is being deleted????)
If this is true and GP wants to use the Class/Instance model instead then I don't think it should have default instances of classes - all instantiation should be done at program run-time or by manual addition by use of a + button
I've obviously only been thinking about this for a few weeks but I'm wanting to able to simply, consistently and clearly explain the new class/instance model to Scratchers
Having an automatic instance of a class seems to fudge the model being promoted and something inside me goes - this isn't quite right.
My Suggestion (always have a suggestion if you don't like something is something I always promote)
If (for reasons of low-barrier to entry) MyClass has to have a default instance, then when creating any other classes - don't have default instances
This way, we could maintain the initial friendliness shared by the other major block programming languages but quickly move on to using the class/instance model fully
For completeness, ability to remove the default instance (inc MyClass one) should be explicitly allowed (with possible warning that last instance is being deleted????)