Dave,
Thanks for the positive feedback. Smalltalk is indeed all about fun for me, but I'm also on a mission to become more productive in my day job as a Ruby designer/programmer. And that mainly means finally mastering the whole OO/Design Patterns/Agile approach (i.e., the difference between 'knowing' OO, and being really proficient with it.)
Luckily, I had the insight to think maybe it might be smart to use Smalltalk as my learning laboratory. Not to pat myself on the back, but that was a really smart move!
I'm not sure why it is so, but I find it much easier to learn things first in Smalltalk. It's probably a combination of the language itself, the environment, but mainly the amazing collection of Smalltalk-oriented books that people have written (including Kent) and that are available for a pittance, used, on Amazon. I've been buying up every Smalltalk book that I can find, and have quite a collection at this point.
Once I figure something out in Smalltalk, I find it translates quite easily to Ruby, which is also a beautiful language, IMHO, but not as good a learning environment.
Anyway, thanks again.
-- John
So, I think it was a case of falling in love with a cool feature, and then mis-applying it, just because it was dying to be used.
On the contrary, it sounds to me like you approached the problem in exactly the right way. You correctly observed that classes can serve as factories, so there was no need to invent something new for that purpose. You used that understanding to implement a simple solution that worked well, and when you encounted a need to support additional complexity, you refactored your system to do so. Well done.
One of the things that makes Smalltalk an enjoyable environment is that it does not force you to completely understand a problem before you get started solving it. You can start simply and move things around later on as you improve your understanding and discover your mistakes.
Hope this explains it... I'm afraid I don't always get the jargon right, but that's why I'm a newbie, I guess!
If you like to think in terms of design patterns, "Smalltalk Best Practice Patterns" by Kent Beck is a very useful guide.
Dave
Beginners mailing list Beginners@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/beginners
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Websites for On-line Collectible Dealers ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Identry, LLC John Almberg (631) 546-5079 jalmberg@identry.com www.identry.com ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~