Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Discussion 3 - Nick Bowman
I had several problems with Squeak, some more annoying than others. The
one thing that drove me crazy was trying to find which methods the classes had
and what they did. It was extremely frustrating to know exactly what you
wanted to implement and how easy it would be to do in say...Java, but in Squeak
there seems to be no simple way to do what you wanted. The best example I
came up with is when I was using a StandardFileMenu, to select an image
from file to rotate, scale, etc. Of course I thought this would be
extremely simple task to do because everything else I have ever used has a
simple way of choosing files. First off there are about 5 different type
of FileChoosers to choose from which makes things difficult from the start.
I tried to deal with a few and gave up and found StandardFileMenu,
sounded simple enough. So I wanted to get the File path to the file back,
simpler said than done unfortunately. Turns out that this
StandardFileMenu returns a StandardFileMenuResult which was all fine
and dandy, until I realized getting the path and file name from the result was
much to complicated. There is a method that returns file name just fine,
but the directory method, gives you some ridiculous directory string
back which I did not realize that was what was happening. I tried for
hours to try and fix up the String that the Directory method gave back to just
give me the path. No success here. Finally I realize that there has
to be something else. Turns out the browsing the Hierarchy is very useful
and gives you all the objects that the current object inherits from. From
here I found that there is a FileDirectory object which is what the
result object actually gives back and within this FileDirectory there is
a method pathName, which gave me exactly what I needed. Overall this
simple task was probably the thing that took me the longest to figure out.
I will now use the Hieracrchy browser all the time to ensure that I get the
whole picture of what every object can do without guessing.
Vinny has nice uses for the workspace, and ways to test code without the full functionality.
Discussion 3: Vinny Ramachandran
Steven says that there is code completion in Squeak!! Who knew? Very helpful and not many
people probably realize this.
Links to this Page