Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007
Co-Web Assignment #1
Co-Web Assignment #2
Squeak provides a number of tools to facilitate users becoming familiar with the process of developing code within the Squeak environment. A few of the tools that have been added to serve as a kind of internal API are the Method Finder, Implementers of…, and Senders of….
The Method finder window opens with instructions for its use and an example loaded in the message pane section. After you have entered and accepted the search parameters, if the search is valid, all the possible methods are populated in the return pane. Selecting any of these methods will open a browser on the method
The method finder is a development tool that assists in finding existing method statements both by keywords and example. It can be accessed from the World Menu as follows:
Whenever a message is selected in a tool, you can search the system for implementers and senders with these tools. This can be done by right-clicking the selected message and selecting either the implementers-of or the senders-of message. These tools include both the Workspace and the System Browser. These tools are useful for browsing around code to check the effects certain methods have on other classes or to allow you to see the possibilities for use by deconstructing their uses elsewhere.
Depending on how you use it, implementors-of will tell you either possible responders to a message sent, or alternative implementations of a method.
Senders-of will show you which methods might call the method in current view.
Co-Web Assignment #3
Two usability evaluations we were introduced to this semester include the Heuristic Evaluation and the Think Aloud evaluation.
- The Heuristic Evaluation is a detailed process of assesing the conformity of a software project's design to known factors that contribute to a user's understanding of the function of and their integration into the affordances and contraints of the system. This approach is appropriate for incomplete projects still in the development stages as it helps with honing the HCI and function of a project to be more usable and effective. This approach is not well suited for exposing flaws in a user's mental model while progressing through the project.
Blocks in Virtual Machines
In the function parenthesisGreaterThan:andLessThan: we are always progressing through the code of the entire function we resolve the truth of the LHS, then we resolve the truth of the RHS, then we see if we have a match using the and operator. In the function blockGreaterThan:andLessThan it is sometimes unnecessary to resolve the truth of the RHS of the equation because if we know that the LHS resolves to FALSE, we can not return TRUE.
Block expressions behave as objects themselves. They accept and send messages in an encapsulated form easily optimizable. In this instance it eliminates code jumping which is intended to allow the same segment of code to operate under 2 different states but sequencing their comparison.
There is no and: message sent because this message is optimized out. The compiler would notice that the LHS can dictate the result of the function and separate out that state with a jumpFalse. When the RHS dictates teh result of the function this is forwarded to the same location by the jumpTo.
Links to this Page